1. You can try code like this: <Directory Id="TARGETDIR" Name="SourceDir" > <Directory Id="INSTALL_LOCATION" Name="MyTool" FileSource="." > .... </Directory> </Directory>
<Property Id="WIXUI_INSTALLDIR" Value="INSTALL_LOCATION" /> <UIRef Id="WixUI_PaymentSystem" /> Actually I'm not sure whether this code will refer to MyTool on drive C: or on another drive. 2. How to skip dialog see http://www.wixwiki.com/index.php?title=UiExtension#Adding_a_Custom_or_Skipping_Dialogs and official documentation at http://wix.sourceforge.net/manual-wix3/WixUI_customizations.htm Briefly: you can add Publish/@Order attribute. 3. About KeyPath attribute (also applicable to File): http://stackoverflow.com/questions/2003043/what-is-the-wix-keypath-attribute Hope this will be helpful. Ilya Serbis On 23.05.2010 21:12, Martin Maurer wrote: > Hello, > > i have started to use WiX a few hours ago. It is a great tool, but meanwhile > i am blocked by some points where i don't find answers: > > > 1) I use WixUI_InstallDir and want to suggest a certain path (e.g. > c:\MyTool\binary instead of c:\program files\MyTool ). I know this is perhaps > non-standard, but i have a different tool (not written by me), which want to > have my installation at this position. How i can give the user a different > path ? I already tried different ways, like the following ones but was not > yet successful: > > <Property Id="WIXUI_INSTALLDIR" Value="APPLICATIONROOTDIRECTORY" /> > > <!-- > <Property Id="WIXUI_INSTALLDIR" Value="c:\MyTool" /> > <Property Id="UI_CONFIG_INPUT_DIR" Value="C:\\MyTool\\" /> > --> > > <!-- > <UIRef Id="WixUI_InstallDir"/> > --> > > <UI Id="WixUI_InstallDir"> > > Is the right way (instead of doing the above not working changes) to define > the directories directly at new non-standard position, something like > > <Directory Id="TARGETDIR" Name="SourceDir"> > <Directory Id="MySpecialFolder" Name="c:\"> > <Directory Id="APPLICATIONROOTDIRECTORY" Name="MyTool"> > <Directory Id="APPLICATIONBINARYDIRECTORY" Name="binary"/> > </Directory> > </Directory> > <Directory Id="ProgramMenuFolder"> > <Directory Id="ApplicationProgramsFolder" Name="MyTool"/> > </Directory> > </Directory> > > But this seems not to work. > > > 2) In general what i want to do is a WelcomeDlg, LicenseAgreement, then start > installation and a final dialog, that installation was successful. > I started with WixUI_Minimal, but there i start directly with a special > LicenseAgreement (which looks different and i don't want it) and WelcomeDlg > is also missing. > I took WixUI_InstallDir, but I want to skip "InstallDirDlg", perhaps also > "VerifyReadyDlg", so the user has no chance to change the path. But i want to > keep the other dialogs. > Is this the correct way ? How can i do it ? > > What i tried so far: > > <UI Id="WixUI_InstallDir"> > ... > > <Publish Dialog="WelcomeDlg" Control="Next" Event="NewDialog" > Value="LicenseAgreementDlg">1</Publish> > > <Publish Dialog="LicenseAgreementDlg" Control="Back" > Event="NewDialog" Value="WelcomeDlg">1</Publish> > <Publish Dialog="LicenseAgreementDlg" Control="Next" > Event="NewDialog" Value="InstallDirDlg">LicenseAccepted = "1"</Publish> > > I changed "InstallDirDlg" to "VerifyReadyDlg" and is almost looks like i want. > But when i press "Back" on "VerifyReadyDlg", i am back to "InstallDirDlg" > instead of LicenseAgreementDlg (or WelcomeDlg is also ok). > I tried removing all "InstallDirDlg", but then i get error messages. > I tried removing all "InstallDirDlg" and "VerifyReadyDlg", but then how do i > start installation of files itself ? > Just for reference, here is the rest of my code (mainly a copy of > WixUI_InstallDir) > > <Publish Dialog="InstallDirDlg" Control="Back" Event="NewDialog" > Value="LicenseAgreementDlg">1</Publish> > <Publish Dialog="InstallDirDlg" Control="Next" > Event="SetTargetPath" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish> > <Publish Dialog="InstallDirDlg" Control="Next" Event="DoAction" > Value="WixUIValidatePath" Order="2">NOT WIXUI_DONTVALIDATEPATH</Publish> > <Publish Dialog="InstallDirDlg" Control="Next" > Event="SpawnDialog" Value="InvalidDirDlg" Order="3"><![CDATA[NOT > WIXUI_DONTVALIDATEPATH AND WIXUI_INSTALLDIR_VALID<>"1"]]></Publish> > <Publish Dialog="InstallDirDlg" Control="Next" Event="NewDialog" > Value="VerifyReadyDlg" Order="4">WIXUI_DONTVALIDATEPATH OR > WIXUI_INSTALLDIR_VALID="1"</Publish> > <Publish Dialog="InstallDirDlg" Control="ChangeFolder" > Property="_BrowseProperty" Value="[WIXUI_INSTALLDIR]" Order="1">1</Publish> > <Publish Dialog="InstallDirDlg" Control="ChangeFolder" > Event="SpawnDialog" Value="BrowseDlg" Order="2">1</Publish> > > <Publish Dialog="VerifyReadyDlg" Control="Back" > Event="NewDialog" Value="InstallDirDlg" Order="1">NOT Installed</Publish> > <Publish Dialog="VerifyReadyDlg" Control="Back" > Event="NewDialog" Value="MaintenanceTypeDlg" Order="2">Installed</Publish> > > <Publish Dialog="MaintenanceWelcomeDlg" Control="Next" > Event="NewDialog" Value="MaintenanceTypeDlg">1</Publish> > > <Publish Dialog="MaintenanceTypeDlg" Control="RepairButton" > Event="NewDialog" Value="VerifyReadyDlg">1</Publish> > <Publish Dialog="MaintenanceTypeDlg" Control="RemoveButton" > Event="NewDialog" Value="VerifyReadyDlg">1</Publish> > <Publish Dialog="MaintenanceTypeDlg" Control="Back" > Event="NewDialog" Value="MaintenanceWelcomeDlg">1</Publish> > > <Property Id="ARPNOMODIFY" Value="1" /> > </UI> > > <UIRef Id="WixUI_Common" /> > > 3) What is "KeyPath" ? When i create entries in the registry, some (first ? > but multiple times ?) has "KeyPath" inside, e.g. > > <RegistryValue Type="string" Name="MyString" Value="MyContent" KeyPath="yes" > /> > > When do i need to use it, when not ? For what is it for ? Some kind of index > / base for something ? > > 4) When creating a shortcut (i took an example from delivered WiX help file > and modified it), there is the following line: > > <RegistryValue Root="HKCU" Key="Software\MyTool" Name="installed" > Type="integer" Value="1" KeyPath="yes"/> > > For what is it ? Is the Name (="installed") relevant or can i take every name > (e.g. wxs_installed) ? I ask, because my tool has a registry entry, with same > name (but string) and different content. So i must change the one or the > other to avoid a conflict... > > > So far for now ! > > Best regards and many thanks for your help ! > > Martin > > ------------------------------------------------------------------------------ > > _______________________________________________ > WiX-users mailing list > WiX-users@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wix-users > > !DSPAM:3680870,4bf96385710861671373634! > > > ------------------------------------------------------------------------------ _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users