views:

1064

answers:

4

How do I run windows 32bit applications in IIS on Windows XP 64 bit?

Note: This is not running within Visual Studio. Note: Only 404 errors are logged. Note: 404 errors caused by IIS disabling CGI scripts

+1  A: 

Try this: cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 true

JohnW
I ran the script, but the app still doesn't run. Do I need to reboot, or do something else?
Joshua
Try following that up with an iisreset. If that doesn't solve it, perhaps posting the error message may help.
JohnW
There are no error messages, the applications just don't run.
Joshua
I even tried a computer restart.
Joshua
That's very unusual. Can you also check the system and application event logs?
JohnW
A: 

If your app still doesn't run after setting IIS to run in 32bit mode (JohnW's answer) you need to track down the error. Check the windows event log (application and system) and check the HTTPERR log file in C:\WINDOWS\system32\Logfiles\HTTPERR folder (may be different location on win64). IIS is pretty good at logging problems.

+1  A: 

IIS, by default, runs your application within the default Application Pool. On 64-bit Windows, that Application Pool is, by default, 64-bit.

You should create a new Application Pool, and configure IIS to run your 32-bit website in your new 32-bit Application Pool.

Justice
+1  A: 

You're probably having a Bitness issue - after you do the Enable32BitAppOnWin64 script, you need to register the 32 bit versions of the ASP.Net filters. Go to the 32 bit version of the framework (C:\Windows\Microsoft.NET\Framework\v2.0.50727) and re-run the aspnet_regiis.exe -i -enable command.

Christopher_G_Lewis