简体   繁体   中英

Web Installer for an ASP.NET application failing on machines running IIS7

I have a relatively simple ASP.NET application that I am trying to create an installer for. I am currently using Visual Studio 2008's "Web Setup Project" which, though I'm told is not ideal, has proved no problems when installing on Windows Server 2003 & IIS6.

IIS7 on Server 2008 and Vista has proved substantially more difficult. The installer starts off fine before halting with an unhelpful " The installer was interrupted before could be installed. You need to restart the installer to try again. " UAC is switched off, and I've already ensured I'm executing the installer with administritive privledges.

The problem sounds identical to the issue outlined in this blog post , however I have the IIS6 Metabase Compatibility role service installed already. I've also tried playing around with AppPools, the Integrated/Classic pipelines and so on, all to no avail.

I've since turned on MSI logging and, whilst I found nothing concrete, I believe the rollback begins somewhere around this error message.

The error indicates that IIS is in 64 bit mode, while this application is a 32 bit application and thus not compatible.

This doesn't make any sense to me whatsoever, as both Vista and Server 2008 are 32-bit installations. I suspect it's a red herring, but I can't be sure.

Has anyone encountered a similar problem, and if so, is there a solution that doesn't involve me moving to a different installation framework?

In order to fix that error message for those using Windows 2003 x64, use the following commands from a cmd prompt:

cscript.exe %SystemDrive%\Inetpub\AdminScripts\adsutil.vbs set W3SVC/AppPools/Enable32BitAppOnWin64 "true"

cd WINDOWS\Microsoft.NET\Framework\v2.0.50727

aspnet_regiis.exe -i 

Source:
How to Run a Microsoft .NET 2.0 or higher Web Application in 32-bit Mode in IIS 6.0 on a 64-bit Server

Note:
By doing the first step, you will now notice that the ASP.net tab is no longer visible.
This is a known bug and the work around is too use scripts to change the .Net version for any running sites.

Try putting a friendly lil checkmark beside each node in

[Programs and Features // Turn Windows features on or off // Internet Information Services // Web Management Tools // IIS 6 Management Compatibility]

Note that I had the same symptoms posted in the blog though, and this fixed it for me. Yours may be different.

Just tackled this last night, therefore my sincerest good luck to you.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM