wix3

Reusing WIX components to speed up candle/light

主宰稳场 提交于 2019-12-18 13:17:55
问题 I am fairly new to WIX, so forgive me if I'm completly missing the boat here, but I was wondering if it was possible to reuse components (mwm,cab,etc) from within a wxs file without having light re-link them every time. The installer I'm working on has several executables, dlls and config files that tend to change between each install. These files amount to about 5 meg worth of installer. The part I want to reuse is the ~350 meg worth of image/map/database files that do not change very often

How do I do a silent install and uninstall with WiX and MSI?

半城伤御伤魂 提交于 2019-12-18 11:09:30
问题 How can a silent installer be created in WiX that does not display any UI dialogs to the user and installs, upgrades and uninstalls with default settings? 回答1: Just don't include any UI/UIRef elements and then no UI will be included :) 回答2: Windows Installer (MSI) uses the following command line arguments to be silent: Silent install or silent major upgrade: msiexec.exe /i foo.msi /qn Silent minor upgrade: msiexec.exe /i foo.msi REINSTALL=ALL REINSTALLMODE=vomus /qn Silent uninstall: msiexec

Deleting XML elements in WiX

房东的猫 提交于 2019-12-18 03:53:31
问题 How do you delete/remove an element from an XML file in WiX? 回答1: Given a .config file with the following content: <configuration> <thingy> <stuff> <item type='value' /> <item type='value2' /> </stuff> </thingy> </configuration> To remove the item element with the type attribute set to 'value' this seems to do the trick: <util:XmlConfig On="install" Action="delete" Id="RemoveAnElement" Node="element" File="Application.dll.config" VerifyPath="/configuration/thingy/stuff/item[\[]@type='value'[\

Using Wix to create 32bit and 64bit installers from one .wxs file

空扰寡人 提交于 2019-12-17 22:22:32
问题 I would like to keep my top level .wxs DRY while building 32 and 64 bit installers. I am using the -arch argument to candle.exe to control what default installer architecture is getting built. The wall I am hitting right now is that it appears the ProgramFilesFolder is different between 32 and 64bit (ProgramFiles64Folder) architectures. Here is my first attempt to work around: <?if $(sys.BUILDARCH)=x64 ?> <Directory Id='ProgramFiles64Folder' Name='PFiles'> <?else ?> <Directory Id=

Copy if not exist in WiX

倾然丶 夕夏残阳落幕 提交于 2019-12-17 20:07:47
问题 I have a config file, myapp.exe.config, that I want to install only if it does not already exist. That is, I don't want to overwrite any existing config file. How can this be done in WiX? (Ultimately I will have to do something more sophisticated with settings, having defaults and overrides and so on. But in the meantime I am just looking for a short-term fix.) 回答1: What you describe is the default behavior if the file is the keypath of a component. For example, the following component will

WiX “Major Upgrade” doesn't completely install app on downgrade

匆匆过客 提交于 2019-12-17 19:49:08
问题 Currently all upgrades work fine whenever updating to a newer version number, however I'm getting an odd behavior when downgrading. It seems that it'll uninstall the existing version and then partially install the version that I'm trying to install, the main exe doesn't exist in the target location yet, but advertised shortcuts are created. When the advertised shortcut is opened, it'll finish the installation (presumably do a repair) and then it'll run fine. Does anyone have any ideas why

How to add custom message with alignment in Welcome message of MSI installer using wix

∥☆過路亽.° 提交于 2019-12-13 20:53:23
问题 I used this line in wxl file to add custom message but still not able to align the version number properly <String Id="WelcomeDlgDescription" Overridable="yes">The Setup Wizard will install [ProductName] on your computer. Click Next to continue or Cancel to exit the Setup Wizard. {\WixUI_Font_Title}Version - [ProductVersion]</String> I want the results to be like this Also, I am not able to change the fonts. Updated I am able to achieve this. Version left hanging in the middle and not

Detecting MajorUpgrade in Wix 3.8

谁都会走 提交于 2019-12-13 14:19:18
问题 I am installing all new versions of my software as major upgrades, as the installations are very small and most of the time, all files change anyway. I would like to skip one dialog in the installer, if an upgrade as compared to a fresh installation is done, but so far I have failed to figure out what conditional (like "Installed AND PATCH") in the following example to use. <Publish Dialog="VerifyReadyDlg" Control="Back" Event="NewDialog" Value="WelcomeDlg" Order="2">Installed AND PATCH<

WIX: How not to call ActionStart(Name=StartMetabaseTransaction) during installation

有些话、适合烂在心里 提交于 2019-12-13 06:33:31
问题 My installer would fail when installed on a machine that has no IIS installed. The features that are going to be installed doesnt need IIS. The error says "Cannot connect to Internet Information Server". In addition to that. The installer file has also a feature that requires IIS. But when I unselect that feature, the installer still looks for IIS. Below is the log it generated. MSI (s) (D0:F8) [11:39:12:437]: Note: 1: 2318 2: C:\Program Files\Cormant Technologies\DCE\WindowsService

WIX execute custom action with admin privilege

二次信任 提交于 2019-12-12 17:25:56
问题 I have written a custom action for my WIX installer. The action´s Execute-attribute is set to deferred and Impersonate and running before InstallFinalize but it encounters a problem within this action which is the missing admin rigth. The action creates a file in the INSTALLFOLDER which is Program File (x86) Thats my WIX code: <?xml version="1.0" encoding="UTF-8"?> <Wix xmlns="http://schemas.microsoft.com/wix/2006/wi"> <Product Id="*" Name="WixTesterSetup" Language="1033" Version="1.0.0.0"