Appendix D: Running 32-bit Applications on 64-bit Windows

Applies To: Windows Server 2003, Windows Server 2003 with SP1

Windows Server 2003TM, Service Pack 1 enables IIS 6.0 to run 32-bit Web applications on 64-bit Windows using the Windows-32-on-Windows-64 (WOW64) compatibility layer. IIS 6.0 using WOW64 is intended to run 32-bit personal productivity applications needed by software developers and administrators, including 32-bit Internet Information Services (IIS) Web applications.

On 64-bit Windows, 32-bit processes cannot load 64-bit DLLs, and 64-bit processes cannot load 32-bit DLLs. If you plan to run 32-bit applications on 64-bit Windows, you must configure IIS to create 32-bit worker processes. Once you have configured IIS to create 32-bit worker processes, you can run the following types of IIS applications on 64-bit Windows:

  • Internet Server API (ISAPI) extensions

  • ISAPI filters

  • Active Server Page (ASP) applications (specifically, scripts calling COM objects where the COM object can be 32-bit or 64-bit)

  • ASP.NET applications

IIS can, by default, launch Common Gateway Interface (CGI) applications on 64-bit Windows, because CGI applications run in a separate process.

Configuring IIS to run 32-bit Web applications on 64-bit Windows

Before you configure IIS to run 32-bit applications on 64-bit Windows, note the following:

  • IIS only supports 32bit worker processes in Worker Process Isolation mode on 64-bit Windows.

  • On 64-bit Windows, the World Wide Web Publishing service can run 32-bit and 64-bit worker processes. Other IIS services like the IIS Admin service, the SMTP service, the NNTP service, and the FTP service run 64-bit processes only.

  • On 64-bit Windows, the World Wide Web Publishing service does not support running 32-bit and 64-bit worker processes concurrently on the same server.

To enable IIS 6.0 to run 32-bit Web applications on 64-bit Windows

  1. Open a command prompt and navigate to the %windir%\Inetpub\AdminScripts directory.

  2. Type the following:

    cscript.exe adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 1
    
  3. Press ENTER.