![](/img/trans.png)
[英]Why my C# program doesn't find the C++/CLI DLL at runtime which is referenced in the project
[英]C++/CLI DLL on C# doesn't compile
我为一些本机c ++函数编写了一个包装DLL,并在c ++ / CLI中对其进行了编译,然后添加了对C#项目的引用,函数在其中进行了指示,但是当我尝试编译项目时,出现此错误:
附加信息:无法加载文件或程序集“ lib,版本= 1.0.3742.39593,Culture = neutral,PublicKeyToken = null”或其依赖项之一。 试图加载格式错误的程序。
有什么问题 ?
64位与32位不兼容是该错误的最常见原因。
在C#项目的“ 项目设置”页面中,您的Platform target
将设置为Any CPU
。 这意味着在64位系统上,程序将在64位进程中运行。 然后它将无法加载以32位为目标的DLL(本机DLL无法切换以适应该过程。)
因此,您需要将其设置为x86。 在VS2010中,新项目的默认值为x86。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.