System.BadImageFormatException调用来自m#的CLI包装器,目标是相同的体系结构

时间:2014-05-26 18:09:07

标签: c# .net dll c++-cli

我目前正在用C#制作一个OpenGL包装器。我现在拥有的:

  • C#项目 - 使用该库的项目(当然要测试它)
  • C#Wrapper - 使用平台调用(p / invoke,又名DllImport)包装opengl32.dll函数,主要的包装函数和定义。
  • C ++ / CLI - 一个单独的包装器,用于包装GLEW直接从refle class中的glew.h调用本机函数

到目前为止,C#包装器没问题。但是当与C ++ / CLI Wrapper进行任何通信时抛出:

System.BadImageFormatException Could not load file or assembly 'GlewWrapper.dll' or one of its dependencies. is not a valid Win32 application.

我的操作系统是Windows 7 64位Ultimate SP1

是的,我尝试将C#项目和C ++ / CLI设置为目标x86(C ++的Win32) 我尝试过针对x64,仍然无法正常工作。

我在System32和SysWOW64中有glew32.dll 我在System32 / amd64和SysWOW64 / amd64中有glew32.dll(64位版本)

我将给它一个Dependency Walker视图并发布所有程序集的结果。

0 个答案:

没有答案