2010-03-15 5 views
0

J'ai un C# exe qui utilise des DLLs C++. J'utilise DllImport dans mon C# exe pour utiliser mes dlls C++. Maintenant, mon problème est que lorsque je ferme mon application, mon application se bloque. Je ne suis pas sûr pourquoi son écrasement. Mon C++ dll est multithread et mon C# exe a Travailleur d'arrière-planApplication se bloque lors de la fermeture

+1

Comment se bloque-t-il? S'il vous plaît poster des détails. –

+1

Un peu plus d'informations serait bien. Quelles DLLs? Quelles procédures? Quelles signatures P/Invoke? Comment/quand sont-ils utilisés? Quel genre de crash? Avez-vous extrait une trace de pile de WinDbg? – Aaronaught

+0

Peut ne pas être pertinent (d'où le commentaire plutôt que la réponse): nous avions un problème similaire sous UNIX parce que nous chargions des bibliothèques dynamiques _and unloading_, dont certaines enregistraient des fonctions atexit() (les mongrels). Puis, quand nous avons quitté notre processus, ces fonctions ont été appelées ou, plus précisément, tout ce qui était là à ce moment-là s'appelait boom, crash, opéra. Étant beaucoup plus UNIX-y que Windows-y, je ne sais pas si cela pourrait aider. Je pensais toujours en parler au cas où. – paxdiablo

Répondre

0

Est-ce qu'il se bloque en mode de débogage ou de libération?

Avez-vous envisagé de placer des points d'arrêt?

Que dit la trace de la pile?

+0

Dans les deux modes, il se bloque. – subbu

+0

@subbu: nous avons encore besoin de plus. –

Questions connexes