使用SWig出现调用异常的情况

未经处理的异常:  System.TypeInitializationException: “Win32Project1PINVOKE”的
类型初始值设定项引发异常。 ---> System.TypeInitializationException: “SWIGExcept
ionHelper”的类型初始值设定项引发异常。 ---> System.BadImageFormatException: 试
图加载格式不正确的程序。 (异常来自 HRESULT:0x8007000B)
   在 Win32Project1PINVOKE.SWIGExceptionHelper.SWIGRegisterExceptionCallbacks_Wi
n32Project1(ExceptionDelegate applicationDelegate, ExceptionDelegate arithmeticD
elegate, ExceptionDelegate divideByZeroDelegate, ExceptionDelegate indexOutOfRan
geDelegate, ExceptionDelegate invalidCastDelegate, ExceptionDelegate invalidOper
ationDelegate, ExceptionDelegate ioDelegate, ExceptionDelegate nullReferenceDele
gate, ExceptionDelegate outOfMemoryDelegate, ExceptionDelegate overflowDelegate,
ExceptionDelegate systemExceptionDelegate)
   在 Win32Project1PINVOKE.SWIGExceptionHelper..cctor() 位置 c:UsersAdministra
torDesktopSTTTWin32Project1Win32Project1Win32Project1PINVOKE.cs:行号 105
   --- 内部异常堆栈跟踪的结尾 ---
   在 Win32Project1PINVOKE.SWIGExceptionHelper..ctor()
   在 Win32Project1PINVOKE..cctor() 位置 c:UsersAdministratorDesktopSTTTWin
32Project1Win32Project1Win32Project1PINVOKE.cs:行号 125
   --- 内部异常堆栈跟踪的结尾 ---
   在 Win32Project1PINVOKE.new_Hi()
   在 Hi..ctor() 位置 c:UsersAdministratorDesktopSTTTWin32Project1Win32Pro
ject1Hi.cs:行号 43
   在 ConsoleApplication1.Program.Main(String[] args) 位置 c:UsersAdministrato
rDesktopSTTTWin32Project1ConsoleApplication1Program.cs:行号 12
请按任意键继续. .

原来是由于C++所做的库是32位应用程序,我如果在C#中选用 Any Cpu 就出问题了。。

1, X86平台

image

2,或首选32位

image

推荐一下:(SWIG C++ –> C#)

http://cherishlc.iteye.com/blog/1689224

原文地址:https://www.cnblogs.com/zbw911/p/Swig.html