我在我的 asp.net Web 应用程序中使用了第 3 方 c++ dll。
dll - 64-bit
asp.net Platform - Any Cpu
asp.net Framework - 4.0 (vs 2010)
System Os - Win 7 Professional (64-bit)
我已将 dll 放在 Applications 文件夹中,并将 dll 的完整路径称为:
[DllImport(@"D:\Application\Sampledll.dll",
EntryPoint = "SampleFunc",
CharSet = CharSet.Ansi,
CallingConvention = CallingConvention.StdCall)]
public static extern int SampleFunc(char[] ch1, char[] ch2);
但我得到了以下结果:
An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B)
使用错误代码搜索时:0x8007000B - 这意味着“在 64 位系统上使用 32 位 dll”
但是 dll 是 64 位 dll....
我如何通过将 VS 的目标平台更改为“x86”和“x64”并将 IIS 的“启用 32 位应用程序”属性设置为“真”来尝试解决此错误
但是得到了同样的错误…………
任何人都可以帮助解决这个问题....