2010-11-19 7 views
0

J'ai converti mon EXE D2010 en DLL de plugin hydra. Cette DLL utilise peu d'autres fonctions DLL qui contiennent des paramètres de chaîne. Donc, j'ai utilisé sharemem comme première unité. J'ai ensuite créé une application hôte Hydra et chargé ce plugin. Les formulaires intégrés dans le plugin sont chargés. Mais je reçois des violations d'accès et les problèmes de scintillement de l'application lors de la fermeture de l'application principale. J'ai essayé de déboguer le plugin et l'hôte. mais ne pouvait pas aller plus loin après un certain stade.Delphi 2010 - Plugin Hydra avec sharemem

Toutes les idées sur la fixation de ce serait très utile

Merci Venkat

Répondre

0

Il n'y a pratiquement aucune information sur cette question utile pour le résoudre. Vous devez être plus spécifique pour une solution spécifique. Cependant, je peux vous donner quelques conseils de résolution de problèmes pour ce genre de problème:

  1. Faites une copie expérimentale de votre application. Progressivement, supprimez les morceaux de code et testez de nouveau le load-plugin et fermez le comportement jusqu'à ce que vous atteigniez la stabilité ou que votre application hôte et le plugin soient des stubs triviaux. À ce stade, vous avez localisé la cause de vos problèmes.
  2. Assurez-vous que l'application hôte est compilée avec "Packages" activé.
  3. Utilisez un outil tel que DependencyWalker pour déterminer la liste des packages d'exécution utilisés par les deux binaires.
  4. Vérifiez la liste des packages d'exécution pour l'hôte et le plug-in. L'idée de base est qu'il ne devrait y avoir aucune unité commune qui est instanciée deux fois en raison du fait que son paquet d'exécution propriétaire est absent de la liste de l'hôte ou de la liste des plugins.
Questions connexes