2009-09-15 3 views
10

J'ai un code natif non géré. J'ai créé une DLL C++ managée et j'essaie d'inclure cette DLL dans du code natif non géré. J'ai l'erreur suivanteErreur irrécupérable LNK1302: prise en charge uniquement la liaison sécurisée .netmodules; impossible de lier ijw/native .netmodule

erreur irrécupérable LNK1302: prise en charge uniquement reliant safe .netmodules; impossible de lier ijw/natif .netmodule

Comment puis-je inclure une DLL C++/CLR gérée dans un code natif non géré?

+0

J'ai rencontré le même problème, après avoir modifié la bonne version du framework .net. Cela fonctionne bien maintenant. – zangw

+0

Etes-vous sûr que vous ajoutez le fichier de bibliothèque ('.lib') et non la DLL ('.dll') comme une entrée à l'éditeur de liens? –

Répondre

3

Regardez ici:

http://msdn.microsoft.com/en-us/library/9x035d1s%28VS.80%29.aspx

« Pour corriger cette erreur, compilez avec/clr: sécurité pour permettre la liaison MSIL, ou passer le/clr ou/clr: fichier .obj pur à l'éditeur de liens au lieu du module. "

+1

J'ai juste essayé ceci et puis j'ai eu quelque chose comme 60.000+ erreurs au lieu de juste l'erreur 1 d'éditeur de liens! Des idées...? –

+1

J'ai essayé de compiler avec/clr: sûr et ne fonctionnait pas. Mais cela a fonctionné quand le lien avec les fichiers/clr .obj. – stackunderflow

2

Assurez-vous que vous ajoutez le fichier de bibliothèque ('.lib') et non la DLL ('.dll') comme une entrée à l'éditeur de liens. Cela produira certainement une erreur LNK1302.

Questions connexes