Geo*_*ton 3 c# c++-cli wrapper
我创建了一个C++/CLI程序集,它创建了一个围绕本机C++代码的包装器.当我将它作为资源添加时,资源编译和程序集加载到我的C#项目中.我可以从我的应用程序中访问我的对象和intellisense,但是在尝试构建时,它会崩溃并出现异常:
BadImageFormat
无法加载文件或程序集"MyCLI,Version = 1.0.3680.28432,Culture = neutral,PublicKeyToken = null"或其依赖项之一.尝试加载格式不正确的程序.
我将它加载到我的表单加载事件:
MyCLI.myCLI z;
Run Code Online (Sandbox Code Playgroud)
...当我编译时,它在我在C#中的主构造函数中的这一行崩溃
Application.Run(new Form1());
Run Code Online (Sandbox Code Playgroud)
有没有人知道可能导致此异常的原因?
谢谢
您正在尝试在64位操作系统上运行此代码.您的C#代码将很好地编译为64位机器代码.但是当它试图加载32位C++/CLI程序集时,你会碰壁.
在C#项目中,使用Project + Properties,Application选项卡,Platform Target = x86.也可以使用Build + Configuration Manager创建64位版本的C++/CLI程序集.使用Platform Target是更好的解决方案.
| 归档时间: |
|
| 查看次数: |
2709 次 |
| 最近记录: |