Thursday 13 March 2008

Running IIS on XP Home

I use Visual Studio 2005 and wanted to use IIS to test publishing a site to, but only have XP Home on my PC upstairs in my office so need to find a way to get IIS running on XP Home. I know I can hear you saying it now .... "You should upgrade to XP Professional". However let me explain why I didn't want to do this an my frustration.

I have a full (legit) version of Windows XP professional that I bought as an upgrade to a laptop (this has since died and is now in little pieces, but that's another story!). As I have an upgrade the most logical thing to do is upgrade my XP Home to XP professional.

Here is my dilemma - The XP Professional is SPK 1 and the XP Home has SPK 2. Windows doesn't allow you to upgrade to XP Professional SPK 1 it needs to be SPK 2.

OK the next step would be to somehow upgrade the XP Pro SPK 1 to XP Pro SPK 2. I found a way to do this using slipstream, at least that's what I thought. I tried several times to get this working, but every time it crashed the OS and I had to do a complete re-install of XP Home. So I finally gave up on the upgrade and I have done without the extra facilities that the Pro version provided.

To be honest the only thing I missed was the ISS. Which brings me back to the reason why I didn't want to pay for another upgrade, when I already have bought one when all I need is IIS.

So ... back to going about installing the IIS.

I discovered that this was possible with a few tweaks of the system.

I can't claim any of these methods of my own, but thought I would share them with you here. I did have to overcome a slight problem which I will cover shortly.

The crux of the installation is that you will need Windows 2000 to get IIS off.

  1. change the sysoc.inf file located at C:\Windows\Inf\sysoc.inf

    and change the iis entry from

    iis=iis.dll,OcEntry,iis.inf,hide,7

    to this

    iis=iis2.dll,OcEntry,iis2.inf,,7

  2. copy the iis.dl_ and iis.in_ from the Win 2000 CD and expand it to a temp file

  3. Copy the iis.dll and iis.inf files to

    c:\windows\System32\Setup and c:\windows\inf respectfully

  4. Goto Add and remove programs and you should now see the option to add IIS under the windows components

    You will need to change the default user name in Directory Security in IIS for you Default web site from IUSR_NAME so that it uses the computer name as well so it will say YOURCOMPUTERNAME\IUSR_NAME

    A full explanation can be found on adamv.com

    As mentioned though I did have a few problems after get it installed. I set up the permission and ran some test .htm pages, and they all worked fine. However I couldn't run .asp page. So I tried following the suggestions on Brooks Younce pages.

    How to Fix it! (if nothing else can!)
    Open "Control Panel" and then "Administrative Tools" then Open "Services"...
    Locate the "Distributed Transaction Coordinator" make sure the process is "Started" and "Automatic"
    (If its not, open a command line and type "msdtc -install", then try and start the service)
    Open a command line and type the following...
    cd %windir%\system32\inetsrv
    rundll32 wamreg.dll, CreateIISPackage (NOTE: "CreateIISPackage" must be typed exactly; it is case-sensitive.)
    regsvr32 asptxn.dll (wait for a dialog box to notify you asptxn has registered correctly)
    IISRESTART
    Open "Control Panel" then "Component Services"...
    You should see all three IIS COM+ applications that have been recreated

    - http://www.brooksyounce.com

    It took a while to get the Distributed Transactions Coordinator installed, but finally got there.

    This however still didn't solve the problem.

    After much digging I finally found out what the answer was. All it was in the end was another permission setting.

    In the Component Services you need to edit the properties of the
    IIS Out-Of-Process Pooled Applications

    image

    You need to change the identity to use the System account

    image

    I now have a working version of IIS on my XP Home without buying another version of the upgrade.

    Technorati Tags: ,,

    No comments: