64位IIS7不会运行32位DLL,即使启用了32位
问题描述:
我有一个使用32位DLL的C#web应用程序。每次我尝试访问该服务,我得到64位IIS7不会运行32位DLL,即使启用了32位
"Could not load file or assembly 'RegCheck' or one of its dependencies. An attempt was made to load a program with an incorrect format. "
我切换了IIS池,以使32位,重置一切,又试了一次 - 但仍是同样的错误。
我发现的大多数问题已经通过“32bit enabled = true”更改解决。有任何想法吗?
答
尝试通过控制台应用程序访问它,没有安装开发工具(即没有安装VS2008的实时环境或开发服务器),然后重试(RE:Heinzi发布的评论)。
如果您仍然可以检查您的Web应用程序是否在正确的.NET框架版本下运行(并且它已安装在服务器上)。
由于这看起来不是需要32位应用程序打开的ISAPI DLL,而是C#Web App。我的钱是在服务器上的web应用程序部署有问题,而不是DLL本身。另外请记住,如果DLL不是.NET,那么您需要先使用regsrv32在服务器上注册它,然后才能通过Web应用程序访问它。
希望我帮了忙。在你的web应用程序
编辑
如果所有其他尝试都失败,请尝试重新编译您正在使用设置目标,以X86编译器和DLL重新引用它。
您可以成功从32位C#控制台应用程序访问DLL吗? – Heinzi 2010-07-29 11:03:44
是的,它似乎确定当我访问VS2008 – Yossale 2010-07-29 11:34:08