2

I have developed an ISAPI filter which runs fine on 32-bit. I also compiled it for 64-bit using VS2005 cross-compiler. But when I am trying to run it on Windows 2008 R2 64-bit server with IIS-7.5, it does not work. It seems filter dll has been loaded but IIS is not doing anything with it. I used the following command to check this.

tasklist /m mydll*

Any suggestions what

Jawaid
  • 99
  • 1
  • 4
  • 17

2 Answers2

3

Is there a particular reason you need the DLL to be 64 bit? I've been able to run 32 bit ISAPI filters on a 64 bit machine by doing the following:

  • Make sure the IIS application pool is set to allow 32 bit applications (this is off by default)

  • Register the DLL using the 32 bit version of regsvr32: C:\Windows\SysWow64\regsvr32.exe

  • Verify that the DLL isn't missing any dependencies by using Dependency Walker: http://www.dependencywalker.com/

Evan M
  • 2,573
  • 1
  • 31
  • 36
  • Thanks for the reply. Actually the reason is that there is another ISAPI filter running which is 64-bit, so I have to make it compatible with 64-bit. The steps you suggested are therefore cannot be applied, although I tried that as well and the other filter stopped running. Anyway my problem is solved, I don't know how but I played with some settings and it worked. I am trying to figure out the actual problem. Will post it if found for other users. Thanks :) – Jawaid Oct 23 '11 at 18:03
  • 1
    I know I'm late, but you just saved my life. Thanks! – christianblais Jan 15 '13 at 18:42
  • Can you tell us the settings you changed? – hawkeye Feb 09 '13 at 13:33
1

For 64 bit, the problem is the registry: The problem I was for 32 bit the location of apache redirector in registry is: [HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0]

but for 64 bitlocation must be: [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Apache Software Foundation\Jakarta Isapi Redirector\1.0]

Note the "Wow6432Node".

so just re-create the 32 bit on the Wow6432Node and then you are set.

Clyde
  • 83
  • 9