cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
deepakzworld
Level 4

InstallScript doesn't create IIS website and virtuals

Hi,
I am trying to create an IIS website and couple of virtual directories under it as part of my InstallScript project. However, in InstallShield 2010, the website and virtual directories are not being created. I have talked with Flexera on this issue about 6 months back and they have admitted that it is a bug in their software and they would be trying to fix this in the next release (hopefully IS'11).
Meanwhile, I wanted to know if there is any way I can create the website and virtuals and initialize them using some InstallScript API.
If this doesn't work, I guess my last resort would be to use VBScript.

Please advice.

Any help is greatly appreciated.

Thanks
Labels (1)
0 Kudos
(6) Replies
joshstechnij
Level 10 Flexeran
Level 10 Flexeran

Are you including any InstallScript objects in your project?
0 Kudos
deepakzworld
Level 4

Yes, you are thinking in the right direction.
I was including merge module holder objects that were conflicting with the IIS settings. Installing them separately as support files has fixed the problem of not being able to create Apps under the default website.
However, there is another issue I am having:
I am trying to install a 32-bit App on a 64-bit Windows 7 system. To get the App working, I need to set the 'Enable 32-bit Applications' flag of the 'Classic .NET AppPool' to 'True'. I have tried using the 'AppCmd.exe' to do this, but no success. Any way of setting this flag to 'True' programmatically would be very helpful.

Thanks
0 Kudos
joshstechnij
Level 10 Flexeran
Level 10 Flexeran

You should be able to obtain an appcmd command line to run with the IIS manager's Configuration Editor. Using this I got the following generated command line:

appcmd.exe set config -section:system.applicationHost/applicationPools /[name='Classic .NET AppPool'].enable32BitAppOnWin64:"True" /commit:apphost


Note that you can also install a new application pool with InstallShield and set the enable32BitAppOnWin64 setting on the new pool, which can be associated with your application.

Regarding the object issue, this is a known issue that was submitted in work order IOB-000058755. This should be resolved in the next release.
0 Kudos
deepakzworld
Level 4

Thanks Josh. I was using:
set config -section:applicationPools -applicationPoolDefaults.enable32BitAppOnWin64:true
which apparently is not working. The command you sent would work for any AppPool that does not have a space in its name. But for 'Classic .NET AppPool', it is complaining. Anyways, I think this gets me very close of the solution.

Also, I tried creating a new AppPool for setting its Enable32-bitApplications flag to true but that does not quite work for our setup. As such, I was looking for a solution specifically pertaining to Classic .NET AppPool.
Thanks again

Do post if you can suggest a quick workaround for the space in the name issue 😄
0 Kudos
joshstechnij
Level 10 Flexeran
Level 10 Flexeran

You may try quoting the -section parameter to see if that prevents the app pool name from being parsed incorrectly by CreateProcess.

The Configuration Editor in IIS can also generate JavaScript and C# code. Outside of these options, you could also use text or XML editors to change the application pool settings in applicationHost.config.
0 Kudos
deepakzworld
Level 4

Thanks for replying.
But all the options you mentioned seem to give the same command line as you mentioned earlier.
Anyways, we have decided to create our own AppPools for our applications and that has taken care of the issue 🙂

Thanks Again
0 Kudos