Filter ISAPI筛选器在Windows 2008 R2 64位上不起作用

Filter ISAPI筛选器在Windows 2008 R2 64位上不起作用,filter,windows-server-2008-r2,isapi,Filter,Windows Server 2008 R2,Isapi,我开发了一个ISAPI滤波器,它在32位上运行良好。我还使用VS2005交叉编译器对其进行了64位编译。但是,当我试图在Windows 2008 R2 64位服务器上使用IIS-7.5运行它时,它不起作用。似乎已加载筛选器dll,但IIS没有对其执行任何操作。我使用下面的命令来检查这一点 任务列表/m mydll* 任何建议什么是否有特殊原因需要将DLL设置为64位?通过执行以下操作,我能够在64位机器上运行32位ISAPI过滤器: 确保IIS应用程序池设置为允许32位应用程序(默认情况下为关

我开发了一个ISAPI滤波器,它在32位上运行良好。我还使用VS2005交叉编译器对其进行了64位编译。但是,当我试图在Windows 2008 R2 64位服务器上使用IIS-7.5运行它时,它不起作用。似乎已加载筛选器dll,但IIS没有对其执行任何操作。我使用下面的命令来检查这一点

任务列表/m mydll*


任何建议什么

是否有特殊原因需要将DLL设置为64位?通过执行以下操作,我能够在64位机器上运行32位ISAPI过滤器:

  • 确保IIS应用程序池设置为允许32位应用程序(默认情况下为关闭)

  • 使用32位版本的regsvr32:C:\Windows\SysWow64\regsvr32.exe注册DLL

  • 使用Dependency Walker验证DLL是否缺少任何依赖项:


对于64位,问题在于注册表: 我遇到的问题是 对于32位,apache重定向程序在注册表中的位置为: [HKEY\U LOCAL\U MACHINE\SOFTWARE\Apache软件基金会\Jakarta Isapi重定向器\1.0]

但对于64位,位置必须为: [HKEY\U LOCAL\U MACHINE\SOFTWARE\Wow6432Node\Apache软件基金会\Jakarta Isapi重定向器\1.0]

请注意“WOW6432节点”


因此,只需在WOW6432节点上重新创建32位,即可设置。

感谢您的回复。实际上,原因是另一个ISAPI过滤器正在运行,它是64位的,所以我必须使它与64位兼容。因此,您建议的步骤无法应用,尽管我也尝试了,但另一个过滤器停止运行。不管怎样,我的问题解决了,我不知道怎么做,但我玩了一些设置,它工作了。我正试图找出真正的问题。如果为其他用户找到,将发布它。谢谢:)我知道我迟到了,但你刚刚救了我的命。谢谢您能告诉我们您更改的设置吗?