asp.net中,64位服务器不能加载c++dll的问题
asp.net的程序中有两个c++的dll(vc6.0编的c++),在本机(32位)运行没有问题,可是将程序发布成网站后,发到windows server 2008(64位)的IIS7后出现加载dll的错误问题。如图:该图为向DllInvoke输入的动态地址,Train.dll放在bin下
public DllInvoke(String DLLPath)
{
hLib = LoadLibrary(DLLPath);
if (hLib == IntPtr.Zero)
{
throw (new Exception("hLib为空!"));
}
}
这个函数中,在本机中hLib能到具体的一个8位的数字(4字节),但发布到服务器后它就为0,会走if语句中,并抛出异常。
我已经将asp.net生成了x86形式的,可是仍然出问题,希望能得到解决办法 --------------------编程问答--------------------
发布到IIS的站点也要设成x86运行模式。要不然会模认为x64,至于怎么设请百度 --------------------编程问答-------------------- 回复二楼
这个已经设置过了 IIS上将兼容32位设置为true了。 --------------------编程问答--------------------