2017-05-12 8 views
0

Je voudrais créer un wrapper DLL x86 géré par C# pour OpenPop que j'appelle de mon code (C) non managé.OpenPop.net appelé à partir du code non géré (provoquant GPF)

Je l'ai fait pour d'autres produits dans le passé en utilisant le paquet NuGet "UnmanagedExports" qui semble bien fonctionner.

J'ai essayé de le faire avec le paquet OpenPop.net mais je reçois un GPF dès que j'appelle "client = new Pop3Client();". Si je supprime tous les appels à OpenPop, la DLL se charge et retourne correctement.

En outre, j'accède à OpenPop à partir d'une structure try/catch, mais il échoue toujours avec un GPF (au lieu d'attraper cette erreur).

J'ai installé le dernier paquet OpenPop.net v2.0.6.1120 et je cible .net v4.5.2 (j'ai aussi essayé la v4.0 sans différence).

Est-ce que OpenPop.net peut être utilisé comme ceci en conjonction avec le paquet UnmanagedExports? Si oui, des suggestions sur la façon dont je pourrais déboguer cela?

Merci!

(je me rends compte que c'est un logiciel libre il n'a donc pas prévu, donc je suis plus qu'heureux de payer pour le soutien si nécessaire)

Répondre

0

J'ai trouvé le problème ... Je ne copie pas le OpenPop.dll à mon dossier d'application où ma DLL est chargée. Une fois le fichier disponible, le GPF ne s'est plus produit. Dommage que ce n'était pas capable d'être piégé par le gestionnaire d'exception C#.