Je suis nouveau sur Visual C++, .NET et le monde de la programmation Windows (venant d'Objective-C/Cocoa), et j'essaie d'utiliser le CFLite (Open CoreFoundation Lite), que j'ai compilé dans un fichier .lib. Il est écrit en C pur et non géré, et j'aimerais l'utiliser dans mon application CLR .NET gérée. Lorsque j'essaie de lier et d'utiliser la fonction CFSTR, qui est un raccourci pour __CFStringMakeConstantString, il échoue horriblement. Aucun conseil? Attaché est l'erreur.Liaison de code non-CLR à l'application .NET
Proj.obj : error LNK2031: unable to generate p/invoke for "extern "C" struct __CFString const * __clrcall __CFStringMakeConstantString(char const *)" ([email protected]@[email protected]@[email protected]); calling convention missing in metadata
Proj.obj : warning LNK4248: unresolved typeref token (01000016) for '__CFString'; image may not run
Proj.obj : error LNK2028: unresolved token (0A00000B) "extern "C" struct __CFString const * __clrcall __CFStringMakeConstantString(char const *)" ([email protected]@[email protected]@[email protected]) referenced in function "int __clrcall main(cli::array<class System::String^>^)" ([email protected]@[email protected]@@@Z)
Proj.obj : error LNK2019: unresolved external symbol "extern "C" struct __CFString const * __clrcall __CFStringMakeConstantString(char const *)" ([email protected]@[email protected]@[email protected]) referenced in function "int __clrcall main(cli::array<class System::String^>^)" ([email protected]@[email protected]@@@Z)
MISE À JOUR: J'ai fini par aller juste avec une application native avec des appels Win32, depuis mon interface utilisateur va être minime quand même (il est une application de fond). J'ai joué un peu avec p/invoke un peu, et cela a semblé compliqué pour un débutant comme moi: p Merci!