我在这里遇到了一些难题。
我的开发盒是64位,Windows 7。 我的所有项目都编译为“任何CPU”。 该项目引用了64位版本的第三方软件
当我运行不使用任何Web引用的单元测试时,它可以正常工作。我可以说它是以64位进程运行的。我可以调用我的命令,它们工作正常。
但是,每当我运行一个调用我自己的PC的Web服务调用的测试时,该代码就会回来告诉我它运行的是32bit / x86。 Web服务与单元测试完全相同,但它测试Web服务/ SOAP代理(实际上它通过Web服务调用相同的代码)。
我一直在试图弄清楚这一点。我检查了所有第三方dll,并确保它们编译为32/64位,并通过快速单元测试进行验证。我不确定为什么通过IIS将其变为32位。
似乎任何通过IIS运行代码的代码都是32位而不是64位。
有什么想法吗?
答案 0 :(得分:3)
我遇到了在Windows 7 64位的AnyCPU编译中引用的32位DLL问题,导致我的应用程序出错。我发现我需要做以下事情:
打开IIS>深入研究应用程序池> {your app pool}>高级设置并将启用32位应用程序属性设置为True。
不确定这是否与您的问题有关,但可能需要检查?