wix3

How to extract data (file count) from MSI “File” Table

早过忘川 提交于 2019-12-03 12:12:10
In our build process there is currently the potential for non-code based files (such as image files) to be added to our web project, but not included in the MSI installer built by WiX. To help prevent this, I want to perform the following in the AfterBuild target for our WiX project: Get a count of all files built (output from web deployment project) Get a count of all files built into MSI (from "File" table in MSI) Compare counts and fail build if they don't match If I fire up Orca I can easily see the File table and count, but I don't know how to automate this from MSBuild. Is there some API

How to execute Custom Action before RemoveExistingProducts with After=“InstallValidate” in WiX

我们两清 提交于 2019-12-03 08:34:53
I have something like this: <InstallExecuteSequence> <RemoveExistingProducts After="InstallValidate"/> </InstallExecuteSequence> Since one of the uninstallation fails i need to execute a Custom Action to solve the problem BEFORE RemoveExistingProducts. Something in the lines of: <CustomAction Id="FixStuff" .. /> <InstallExecuteSequence> <Custom Action="FixStuff" Before="RemoveExistingProducts" /> <RemoveExistingProducts After="InstallValidate"/> </InstallExecuteSequence> This of course doesn't work since Custom Action cannot be before InstallInitialize. I'd really like to remove existing

WiX undefined preprocessor variable

女生的网名这么多〃 提交于 2019-12-03 08:06:28
问题 I'm starting to use WiX in order to do automated builds to create msi's of my c# projects and am experiencing the error "Undefined preprocessor variable '$(var.MyProject.TargetDir)'" I am using the latest WiX v3.0.5419. Inside my wxs file I am trying to use pre-processor variables that are listed on this webpage (http://blogs.msdn.com/jrock/archive/2008/01/29/complete-list-of-candle-preprocessor-variables.aspx) <Component Id="MyId" Guid="MyGuid"> <File Id="MyId" Name="MyName" KeyPath="yes"

Including all dependencies

落花浮王杯 提交于 2019-12-03 05:47:58
I'm just starting out with WiX as I need to be able to automate building an MSI on our CI server. Is there anyway to automatically include all the dependencies of a project? Rob Mensching The "proj" extension to heat.exe is getting better. Heat isn't quite ready to be used for production in an automated fashion. It's a very reasonable way to get the initial structure put together but doesn't quite do the right thing with repeated runs (for example, Component/@Guids aren't stable, yet...). When the above issues are solved in heat.exe then incorporating it into your build process will certainly

In WiX how can I select an IIS website by name?

ε祈祈猫儿з 提交于 2019-12-03 04:30:37
问题 What I would like to do is show the installer user a list of the websites on their server and allow them to choose one (using the method described here: http://www.cmcrossroads.com/content/view/13160/120/, which now seems broken see here for the core code). The installer would then create a virtual directory in the chosen website. However, my searching seems to have revealed that the only way to specify a website in WiX is by IP, Port, and Header. Asking for these is not very user friendly,

How do you use WiX to deploy VSTO 3.0 addins?

一个人想着一个人 提交于 2019-12-03 01:22:12
问题 I want to deploy a VSTO 3 Application Level Word 2007 addin that I've written with Visual Studio 2008. I see that WiX has an extension named WixOfficeExtension that looks like it might have this functionality, but I can't find any documentation for it, and I can't discern it's purpose from the source code. Has anyone attempted this before, and were you able to pull it off successfully? 回答1: This is the code I ended up using. I basically ported the examples from MSDN to use WiX. Note: This

WiX Includes vs Fragments

别等时光非礼了梦想. 提交于 2019-12-03 01:03:51
What's the difference between a WiX include ( .wxi file) and a WiX fragment ( .wxs file)? What are the use cases for each? Which should be used and why? The file extension is a convenience, the content of the file is what really matters. The distinction makes it easier to manage the difference between the actual installation (wxs files) and the properties required to create the installation (wxi files). For example, your wxs files specify the product and its contents (which files you install) whereas you would use your wxi files to specify product version, upgrade codes, common paths, etc. The

WiX undefined preprocessor variable

孤人 提交于 2019-12-02 21:39:15
I'm starting to use WiX in order to do automated builds to create msi's of my c# projects and am experiencing the error "Undefined preprocessor variable '$(var.MyProject.TargetDir)'" I am using the latest WiX v3.0.5419. Inside my wxs file I am trying to use pre-processor variables that are listed on this webpage ( http://blogs.msdn.com/jrock/archive/2008/01/29/complete-list-of-candle-preprocessor-variables.aspx ) <Component Id="MyId" Guid="MyGuid"> <File Id="MyId" Name="MyName" KeyPath="yes" Source="$(var.MyProject.TargetDir)\MyName.dll" /> </Component> I have added the reference for MyProject

How to create/Where to get Wix Bootstrapper for Multiple Instances

淺唱寂寞╮ 提交于 2019-12-02 20:54:29
I'm currently learning how to create msi installers using WiX and it seems I've hit a wall. All is well when I create an MSI containing everything needed for a single environment. I have features, and components, and can install my MSI. Now I'm at the stage where I want to convert this in a SQL Server-style installer, where you have multiple instances support. At the start I want to user to get a screen which allows him to create a new instance, or manage already existing instances. (to update/remove them) I've spend 2 full days looking everywhere for a solution, without much luck. I've found

In WiX how can I select an IIS website by name?

烈酒焚心 提交于 2019-12-02 17:43:07
What I would like to do is show the installer user a list of the websites on their server and allow them to choose one (using the method described here: http://www.cmcrossroads.com/content/view/13160/120/ , which now seems broken see here for the core code). The installer would then create a virtual directory in the chosen website. However, my searching seems to have revealed that the only way to specify a website in WiX is by IP, Port, and Header. Asking for these is not very user friendly, so I'm left with the idea of writing a second custom action to get those details from a website name.