CODEDIGEST
Home Articles CodeDigest Tutorials FAQs
Skip Navigation LinksHome » Article » IIS Article » IIS7 - Running 32-bit and 64-bit ASP.NET versions at the same time on different worker processes   You are not logged in.
Search
 

Technologies
 

CodeDigest Navigation
 

Technology News
No News Feeds available at this time.
 

Community News
No News Feeds available at this time.
 
IIS7 - Running 32-bit and 64-bit ASP.NET versions at the same time on different worker processes

By Rakki Muthukumar
Posted On Feb 20,2008
Article Rating: (Login)
Be first to rate
this article.
No of Comments: 13
Print this article.
Category: IIS

Subscribe to our feed!

IIS7 - Running 32-bit and 64-bit ASP.NET versions at the same time on different worker processes

In IIS6, this was a pain area. On a 64-bit Windows 2003 Server, you cannot run worker processes in both 32-bit mode and as well as 64 bit mode. Either only one of them was possible.

This was possible by the below Metabase Key which would be applied to the W3SVC/AppPools node.

W3SVC/AppPools/enable32BitAppOnWin64 : true | false

Read more how to do this in IIS 6.0 here. But, in IIS7, you can run 32-bit and 64-bit worker processes simultaneously. Let’s see how to do it.

You have the same enable32BitAppOnWin64 property for the applicationPools in the applicationHost.config. Now, you can set this for individual application pools. Below is my sample configuration:

<applicationPools>

 <add name="MyAppPool32bit" autoStart="true" enable32BitAppOnWin64="true" />

 <add name="MyAppPool64bit" autoStart="true" enable32BitAppOnWin64="false" />

  <applicationPoolDefaults>

   <processModel identityType="NetworkService" />

  </applicationPoolDefaults>

</applicationPools>

Below is how you do it from IIS7 manager:

  1. Right click on the Application Pool and select “Advanced Settings…” or select the same from the Actions pane after selecting the Application pool
  2. Change the “Enable 32-bit Applications” to True (if you want the application pool to spawn in a 32-bit mode)
  3. Click OK

Below is how you do from the AppCmd:

appcmd apppool set /apppool.name:MyAppPool32bit /enable32BitAppOnWin64:true

appcmd apppool set /apppool.name:MyAppPool32bit /enable32BitAppOnWin64:false

NOTE : By default, it is false.

Most of you may already know how to see if the process is really spun in a 32-bit mode in 64-bit OS. Yes, simple way is to open the Task Manager and go to Processes tab – you would see the below:

Now, you may ask how does the correct version of the DLLs picked up automatically. Open your applicationHost.config and search for aspnet_filter. You would see the below:

<isapiFilters>

    <filter name="ASP.Net_2.0.50727.0" path="%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="bitness32" />

    <filter name="ASP.Net_2.0.50727-64" path="%windir%\Microsoft.NET\Framework64\v2.0.50727\aspnet_filter.dll" enableCache="true" preCondition="bitness64" />

</isapiFilters>

The preCondition="bitness32" or "bitness64" decides which ISAPI Filter to pick up for corresponding modes. Same case with any DLL used, for example ISAPI Filter, Modules, etc.

Happy Learning!

Similar Articles
  • You can contribute to CodeDigest.Com:
    Article Feedback
    Title  
    Submitted By  
    Comment  
    Enter the verification number
     
    Comments
    Mf5CTF , [url=http://ipzuatuxeteq.com/]ipzuatuxeteq[/url], [link=http://vxgqjjsfgoad.com/]vxgqjjsfgoad[/link], http://mzbdicotnyfl.com/
    Mf5CTF , [url=http://ipzuatuxeteq.com/]ipzuatuxeteq[/url], [link=http://vxgqjjsfgoad.com/]vxgqjjsfgoad[/link], http://mzbdicotnyfl.com/
    Vr8nUH <a href="http://dvntshxnxhtm.com/">dvntshxnxhtm</a>
    Vr8nUH <a href="http://dvntshxnxhtm.com/">dvntshxnxhtm</a>
    By6jdX , [url=http://mlmcxqunicih.com/]mlmcxqunicih[/url], [link=http://yrjmadjuknqj.com/]yrjmadjuknqj[/link], http://jnfmoctwixqy.com/
    By6jdX , [url=http://mlmcxqunicih.com/]mlmcxqunicih[/url], [link=http://yrjmadjuknqj.com/]yrjmadjuknqj[/link], http://jnfmoctwixqy.com/
    NnD1Kg <a href="http://wjdnqwqfovxb.com/">wjdnqwqfovxb</a>
    NnD1Kg <a href="http://wjdnqwqfovxb.com/">wjdnqwqfovxb</a>
    You have actually crteead some excellent points here. I specifically appreciate the way you've been able to stick so much thought into a relatively short post (comparitively) which creates it an thoug
    You have actually crteead some excellent points here. I specifically appreciate the way you've been able to stick so much thought into a relatively short post (comparitively) which creates it an thoughtful publish on your subject. In my opinion, you've presented the topic in a quite thorough yet concise manner, that is genuinely useful when someone wants to get the facts without spending too a lot time searching the Internet and sifting out the noise to discover the answers to their questions. I usually get so frustrated with so numerous in the final results inside the major SE's due to the fact they normally seem to mostly be filled with filler content that often isn't extremely sensible. If you don't mind I'm going to add this post and your blog to my delicious favorites so I can share it with my family. I appear forward to coming back to read your future posts as well.
    flash app not works
    Hello Sir, I'm using window server 2008 with iis7, after enabling these options my flash application still not working in windows 64 bit. I'm running MySQL database it works fine on 32bit but not works for 64bit. any suggestions. thanks
    5NdMpp <a href="http://qfvvnmlxdmjr.com/">qfvvnmlxdmjr</a>
    5NdMpp <a href="http://qfvvnmlxdmjr.com/">qfvvnmlxdmjr</a>
    99vT3s , [url=http://uqibsueiujfy.com/]uqibsueiujfy[/url], [link=http://tuceopugnmxp.com/]tuceopugnmxp[/link], http://mvcwazoulrjn.com/
    99vT3s , [url=http://uqibsueiujfy.com/]uqibsueiujfy[/url], [link=http://tuceopugnmxp.com/]tuceopugnmxp[/link], http://mvcwazoulrjn.com/
    Good
    It is really good.
    Params reversed
    Your parameters appear to be back to front. Instead of
    appcmd apppool set /apppool.name:MyAppPool32bit /enable32BitAppOnWin64:true

    appcmd apppool set /apppool.name:MyAppPool32bit /enable32BitAppOnWin64:false

    You should have
    appcmd set apppool /apppool.name:MyAppPool32bit /enable32BitAppOnWin64:true

    appcmd set apppool /apppool.name:MyAppPool32bit /enable32BitAppOnWin64:false
    question
    Hi, this is very informative. Thanks. I have question though, earler on 64-bit Windows, 32-bit processes cannot load 64-bit DLLs, and 64-bit processes cannot load 32-bit DLLs. So with IIS7 , based on what u described, is this now possible?
    great article
    Hi, this is veryy informative. Thanks. I have quesstion though, earler on 64-bit Windows, 32-bit processes cannot load 64-bit DLLs, and 64-bit processes cannot load 32-bit DLLs. So with IIS7 , based on what u described, is this now possible?
    dcohen
    Hi i'm running server 2008 with iis7, after enabeling 32bit i reset the iis7 (iisreset) but still geting the same error. i'm runnig accsess database 2007 it runs fine on 32bit. any sugestions. thanks