Monday, December 27, 2010

How to enable the 64bit compatibility on IIS6 and IIS7?

Sometimes, you will get the following error after deploying your web application (developed for 64 bit
environment and if you referred to any GAC DLL in your application) on IIS 6 or IIS7.

Could not find the path of
C:\Windows\assembly\GAC_MSIL_<Dll Name>_<GAC ID>\Bin

This error occurs because of your IIS currently not supporting 64bit applications, so you need to enable
the 64bit
compatibility on IIS and you can resolve this by using the following steps on different IIS
versions based your
requirements.

For IIS6:
Step 1:  Click Start, click Run, type cmd, and then click OK.
Step 2: Type the following command to disable the 32-bit mode:

cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs
SET W3SVC/AppPools/Enable32bitAppOnWin64 0

Step 3: Type the following command to install the version of
ASP.NET 2.0 and to install the script maps at the IIS
root and under:

%SYSTEMROOT%\Microsoft.NET\Framework64\v2.0.50727
\aspnet_regiis.exe -i

Step 4: Make sure that the status of ASP.NET version 2.0.50727
        is set to Allowed in the Web service extension list in
Internet Information Services Manager(if your
application deployed on windows 2003 or 2008).
For IIS7:
Step 1:  Open the Internet Information Service Manager  
from Start Menu or Control Panel --> Administrative
Tools.
Step 2: Expand the Application Pools Node then find your Website
Application Pool then right click on it then click on
Advanced Settings, it will popup the settings screen
here you need to set false for Enable32bitApplication.
This settings may affect your existing 32bit application,
if you get any error on your 32 applications then you
reset the above setting and create a new application pool
just like existing on and use itfor 64bit with
appropriate Enable32bitApplication setting(value must
be false).

No comments :

Post a Comment