Re: [WiX-users] WebSites in ComboBox dynamically
Hello Alexei and All, I'm new to Wix. I'm trying to make a installer for website - something similar to what visual studio IDE provides. I've tried using the two scripts mentioned in the posts here to populate the combo box with the websites available on a machine as well as set the port of the in the WebAddress element using the script given here. But my installation is failing with the error message ConfigureIIs: Error 0x8007000d: invalid port provided for web site: ConfigureIIs: Error 0x8007000d: failed to read IIsWebSite table Error 26002. Failed to read IIsWebSite table. (-2147024883 ) I don't know where I'm going wrong. Please guide me as to how do i set the website port correctly. The following are the files i'm using Test.wxs: ?xml version=1.0 encoding=UTF-8? Wix xmlns=http://schemas.microsoft.com/wix/2006/wi; xmlns:iis=http://schemas.microsoft.com/wix/IIsExtension; xmlns:ui=http://schemas.microsoft.com/wix/WixUIExtension; Product Id=7b523f47-ef58-4d3c-8ca1-fea6be516471 Name=My Product Language=1033 Version=1.0.0.0 Manufacturer=Personal Co UpgradeCode=0a8c10df-fe3e-4aec-8954-50b9ecdb0a41 Package InstallerVersion=100 Compressed=yes / Icon Id=icon.ico SourceFile=tray.ico/ Property Id=ProductIcon Value=icon.ico / Condition Message=Only an Administrator can install this application Privileged /Condition Condition Message=Windows Server 2003 is required VersionNT = 502 /Condition PropertyRef Id=NETFRAMEWORK20/ Condition Message=The .NET Framework 2.0 or higher must be installed Installed OR NETFRAMEWORK20 /Condition PropertyRef Id=IISMAJORVERSION/ Condition Message=IIS version 5 or higher must be installed Installed OR (IISMAJORVERSION = #5) /Condition Media Id=1 Cabinet=WebAppWixProject.cab EmbedCab=yes / Directory Id=TARGETDIR Name=SourceDir Directory Id=ProgramFilesFolder Directory Id=PersonalCo Name=Personal Co. Directory Id=INSTALLLOCATION Name=TestApplication Component Id=TestComponent DiskId=1 Guid=80b0ee2a-a102-46ec-a456-33a23eb0588e File Id=Error.aspx Name=Error.aspx Source=Error.aspx / File Id=Login.aspx Name=Login.aspx Source=Login.aspx / iis:WebVirtualDir Id=MyWebApp Alias=TestApplication Directory=INSTALLLOCATION WebSite=DefaultWebSite iis:WebApplication Id=TestWebApplication Name=TestApplication / /iis:WebVirtualDir /Component /Directory /Directory /Directory /Directory iis:WebSite Id='DefaultWebSite' Description='[WebsiteCombo]' Directory='INSTALLLOCATION' iis:WebAddress Id=AllUnassigned Port=[WebsiteComboIP] IP=[WebsiteComboIA] / /iis:WebSite Feature Id=ProductFeature Title=registeR4Health - Provider Application Level=1 ComponentRef Id=TestComponent / /Feature UIRef Id=WixUI_Common / UI Property Id=DefaultUIFont Value=WixUI_Font_Normal / TextStyle Id=WixUI_Font_Normal FaceName=Tahoma Size=8 / TextStyle Id=WixUI_Font_Bigger FaceName=Tahoma Size=12 / TextStyle Id=WixUI_Font_Title FaceName=Tahoma Size=9 Bold=yes / Property Id=WIXUI_INSTALLDIR Value=INSTALLLOCATION / Property Id=PIDTemplate Value=--- / Property Id=ARPNOMODIFY Value=1 / DialogRef Id=BrowseDlg / DialogRef Id=DiskCostDlg / DialogRef Id=ErrorDlg / DialogRef Id=FatalError / DialogRef Id=FilesInUse / DialogRef Id=MsiRMFilesInUse / DialogRef Id=PrepareDlg / DialogRef Id=ProgressDlg / DialogRef Id=ResumeDlg / DialogRef Id=UserExit / Publish Dialog=ExitDialog Control=Finish Event=EndDialog Value=Return Order=9991/Publish Publish Dialog=WelcomeDlg Control=Next Event=NewDialog Value=LicenseAgreementDlg1/Publish Publish Dialog=LicenseAgreementDlg Control=Back Event=NewDialog Value=WelcomeDlg1/Publish Publish Dialog=LicenseAgreementDlg Control=Next Event=DoAction Value=GetIISSites Order=1LicenseAccepted = 1/Publish Publish Dialog=LicenseAgreementDlg Control=Next Event=NewDialog Value=LicenseKeyDlg Order=2LicenseAccepted = 1/Publish Publish Dialog=LicenseKeyDlg Control=Back Event=NewDialog Value=LicenseAgreementDlg1/Publish Publish Dialog=LicenseKeyDlg Control=Next Event=ValidateProductID Value=[PIDKEY] Order=11/Publish Publish Dialog=LicenseKeyDlg Control=Next Event=DoAction Value=ConfigureIISSite Order=21/Publish Publish Dialog=LicenseKeyDlg Control=Next Event=NewDialog Value=InstallDirDlg Order=3ProductID/Publish Publish Dialog=InstallDirDlg Control=Back Event=NewDialog Value=LicenseKeyDlg1/Publish Publish Dialog=InstallDirDlg Control=Next Event=SetTargetPath Value=[WIXUI_INSTALLDIR] Order=11/Publish Publish Dialog=InstallDirDlg Control=Next Event=NewDialog
Re: [WiX-users] WebSites in ComboBox dynamically
Our solution to this assumes knowledge of the server. We have our server admins create virtual IP addresses that map to the actual machine address. In this way, we install our websites to Port 80 of the virtual IP address with no requirements for host headers. We just leave the Default Website connected to the actual IP address. David Adams MSN MessengerID: [EMAIL PROTECTED] From: John Hidey [EMAIL PROTECTED] To: WiX-users wix-users@lists.sourceforge.net Subject: Re: [WiX-users] WebSites in ComboBox dynamically Date: Wed, 12 Jul 2006 09:00:10 -0400 MIME-Version: 1.0 Received: from lists-outbound.sourceforge.net ([66.35.250.225]) by bay0-mc12-f6.bay0.hotmail.com with Microsoft SMTPSVC(6.0.3790.2444); Wed, 12 Jul 2006 06:00:46 -0700 Received: from sc8-sf-list1-new.sourceforge.net (unknown [10.3.1.93])by sc8-sf-spam2.sourceforge.net (Postfix) with ESMTPid 8A293F7D9; Wed, 12 Jul 2006 06:00:45 -0700 (PDT) Received: from sc8-sf-mx1-b.sourceforge.net ([10.3.1.91]helo=mail.sourceforge.net)by sc8-sf-list1-new.sourceforge.net with esmtp (Exim 4.43)id 1G0eKS-0003ue-Uhfor wix-users@lists.sourceforge.net; Wed, 12 Jul 2006 06:00:40 -0700 Received: from mail2.servicelinklp.com ([12.169.126.63]helo=pitmxp02.servicelink.com)by mail.sourceforge.net with esmtp (Exim 4.44) id 1G0eKR-0004td-Vufor wix-users@lists.sourceforge.net; Wed, 12 Jul 2006 06:00:36 -0700 Received: from CLUPITEXC01.servicelink.com ([10.220.1.81]) bypitmxp02.servicelink.com with Microsoft SMTPSVC(6.0.3790.211); Wed, 12 Jul 2006 09:03:03 -0400 X-Message-Info: LsUYwwHHNt0+THxOMAmBn5KeYwEFtOLjSogFBW4bkzw= Content-class: urn:content-classes:message X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: [WiX-users] WebSites in ComboBox dynamically thread-index: AcalKrbdw5tyLB/mRNa6dfsgDd1/bgAh6A2g References: [EMAIL PROTECTED][EMAIL PROTECTED][EMAIL PROTECTED][EMAIL PROTECTED] X-OriginalArrivalTime: 12 Jul 2006 13:03:03.0187 (UTC)FILETIME=[8262A630:01C6A5B3] X-BeenThere: wix-users@lists.sourceforge.net X-Mailman-Version: 2.1.8 Precedence: list List-Id: General discussion for Windows Installer XML toolset.wix-users.lists.sourceforge.net List-Unsubscribe: https://lists.sourceforge.net/lists/listinfo/wix-users,mailto:[EMAIL PROTECTED] List-Archive: http://sourceforge.net/mailarchive/forum.php?forum=wix-users List-Post: mailto:wix-users@lists.sourceforge.net List-Help: mailto:[EMAIL PROTECTED] List-Subscribe: https://lists.sourceforge.net/lists/listinfo/wix-users,mailto:[EMAIL PROTECTED] Errors-To: [EMAIL PROTECTED] Return-Path: [EMAIL PROTECTED] -All- First I would like to thank everyone for the great help and support I got through this mailing list. The help was great and I got the combo box populating with the sites. Now I have a different problem related to websites. Let's say I have three sites on my box. The default site running on port 80 with no host header, site 1 running on port 81 with no host header and finally site 2 running on port 80 with a host header value of SITE2. When I select a site from my combo box and set the values Website element it appears that it is always installing under the default site. How do I handle this properly. More importantly, how do I handle this in a generic way so that no knowledge of the destination machine is required to do the install. Hope I am describing this properly. Thanks again everyone for all the help. Dana, your script you give me was very clean, easy to read and commented well. John From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dana Gutride Sent: Tuesday, July 11, 2006 4:43 PM To: WiX-users Subject: Re: [WiX-users] WebSites in ComboBox dynamically John: I'm not 100% sure what is going on there. My guess is that when the msi was generated, there wasn't enough information given it to create the combobox table (like listitem entries). You might need to include something in your ui page like this: ComboBox Property=IISWebsite ListItem Text=None Value=0/ /ComboBox You'll need to delete the listitems for that combobox before the ui is shown, however, or you'll end up with other problems in your MSI. I've included a file that I used as a testbed for combobox population. As a disclaimer: it is better (as you'll be told many times on this list) to use C++ custom actions, and I know there are a few good examples of c++ custom actions which populate combo boxes (see http://www.tramontana.co.hu/wix/lesson10.php#10.1). But, to help you diagnose your problem for the time being, take a look at the included file, see if you can get that to work, and then build up from there. Dana On 7/11/06, John Hidey [EMAIL PROTECTED] wrote: Dana, I now have the custom action being called within the MSI and it can be seen within the log file but I' still getting an error ( The same error ). Here is my latest log file. I have highlighted the line in red that doesn't seem right to me. I
Re: [WiX-users] WebSites in ComboBox dynamically
We approach the problem from a little different perspective. Instead of using a combo box / selection functionality within the UI, we set up multiple web site / web application components and features and have Admins (who perform installs in our environment) select which one they choose. In our case, there is a web site / web application component feature for each environment into which the application will be installed. The IP address Port values are property values defined in an application-specific WXS file while the actual component features are defined in a common WXS file that each application inherits as a fragment. From the installers perspective, they select which one to install from the [Select Features] dialog. We are building installs for internally developed and utilized applications (not commercial) so we know the IP addresses and Ports as a function of our design. We usually have four possible environments into which an application is being loaded (Dev, Test, QA, or Production) our features easily allow the installers (who do not need to know or understand anything about our apps) to select and install to the appropriate environment. I do not know if this type of model would meet your needs, but if you need more specifics, let me know. David Adams MSN MessengerID: [EMAIL PROTECTED] From: John Hidey [EMAIL PROTECTED] To: wix-users@lists.sourceforge.net Subject: [WiX-users] WebSites in ComboBox dynamically Date: Tue, 11 Jul 2006 13:32:27 -0400 MIME-Version: 1.0 Received: from lists-outbound.sourceforge.net ([66.35.250.225]) by bay0-mc7-f3.bay0.hotmail.com with Microsoft SMTPSVC(6.0.3790.2444); Tue, 11 Jul 2006 10:33:30 -0700 Received: from sc8-sf-list1-new.sourceforge.net (unknown [10.3.1.93])by sc8-sf-spam2.sourceforge.net (Postfix) with ESMTPid 8A88712EDD; Tue, 11 Jul 2006 10:33:19 -0700 (PDT) Received: from sc8-sf-mx2-b.sourceforge.net ([10.3.1.92]helo=mail.sourceforge.net)by sc8-sf-list1-new.sourceforge.net with esmtp (Exim 4.43)id 1G0M6n-0002zj-Tkfor wix-users@lists.sourceforge.net; Tue, 11 Jul 2006 10:33:18 -0700 Received: from mail1.servicelinklp.com ([12.169.126.62]helo=pitmxp01.servicelink.com)by mail.sourceforge.net with esmtp (Exim 4.44) id 1G0M6n-0001UW-9dfor wix-users@lists.sourceforge.net; Tue, 11 Jul 2006 10:33:17 -0700 Received: from CLUPITEXC01.servicelink.com ([10.220.1.81]) bypitmxp01.servicelink.com with Microsoft SMTPSVC(6.0.3790.211); Tue, 11 Jul 2006 13:35:04 -0400 X-Message-Info: txF49lGdW43/Eo6ao/OqPsXMPCw+sVukMfxVohfmVkg= Content-class: urn:content-classes:message X-MimeOLE: Produced By Microsoft Exchange V6.5.7226.0 X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: WebSites in ComboBox dynamically thread-index: AcalD/rgGTyN1HGhRFOXsiovXAUDOQ== X-OriginalArrivalTime: 11 Jul 2006 17:35:04.0437 (UTC)FILETIME=[58320250:01C6A510] X-BeenThere: wix-users@lists.sourceforge.net X-Mailman-Version: 2.1.8 Precedence: list List-Id: General discussion for Windows Installer XML toolset.wix-users.lists.sourceforge.net List-Unsubscribe: https://lists.sourceforge.net/lists/listinfo/wix-users,mailto:[EMAIL PROTECTED] List-Archive: http://sourceforge.net/mailarchive/forum.php?forum=wix-users List-Post: mailto:wix-users@lists.sourceforge.net List-Help: mailto:[EMAIL PROTECTED] List-Subscribe: https://lists.sourceforge.net/lists/listinfo/wix-users,mailto:[EMAIL PROTECTED] Errors-To: [EMAIL PROTECTED] Return-Path: [EMAIL PROTECTED] -All- I apologize for posting this if it has been answered several times but I am unable to get this working. I am trying to display on the web sites in a combobox in the ui. I have done everything that I can think of, but I am a far cry from being a wix expert. If anyone could point me to why I keep getting a error dialog showing an error 2205 it would be greatly appreciated. Also, if I am doing this completely wrong please tell me so. I will not take offence to any comment. I'm coming to you guys for help so I will accept all help. Thanks so much everyone in advance. I'm trying to learn this stuff but having some issues with some of the concepts, with the help of everyone I'm sure I'll get it in time. Thanks John Here is the properties which I have in my wxs file. Property Id=TARGETWEBCOMBO / Property Id=TARGETWEBCOMBO2 RegistrySearch Id=FindTargetWeb Type=raw Root=HKLM Key=Software\ServiceLink\ServiceLink Enterprise Library Name=TARGETWEBCOMBO / /Property Here is my custom actions and install sequences CustomAction BinaryKey=GETSITESSCRIPT Execute=firstSequence Id=caGetWebSites VBScriptCall=GetWebSites Return=check / Binary Id=GETSITESSCRIPT SourceFile=..\..\..\Program Files\WixEdit\scripts\GetWebSites.vbs / InstallExecuteSequence Custom Action=caGetWebSites Sequence=2 / /InstallExecuteSequence Here is my ONLY combobox on the form Control Id=WebSites Type=ComboBox Sorted=no Property=TARGETWEBCOMBO Indirect=no ComboList=yes X=20 Y=72 Width=330 Height=16