[wix-users] Need help to get started

Jon Earle earlej at hotmail.com
Wed Mar 2 11:15:10 PST 2016

Hey folks!
I have a scenario I'm pondering.  We need to create a new build server, installing VS2015 and the latest wdk for building a hardware device driver.  The outdated build server cannot host vs2015, already tried that.  The primary issue is that it also contains our installation of installshield 2009, and we have no copy of the installer.  So, I thought I would investigate converting to wix rather than shelling out $5kUSD for the new version.
Noone touches the installer except for maybe once or twice a year - things don't change that much.  Once the script is working, it is rarely ever looked at again, so you can imagine, there are few folks who a) understand the windows installer at all and b) there is no appetite to spend any time on it, at any level.
So, if I can convert the current project to wix, quickly, and be done with it, it will fly.  If not, then we'll spend the $5k and be done with it that way too.
I know, sounds like a cop-out, but that is the reality of my situation.  :(
So, what I've googled up is this... convert the current msi using dark.exe and then rearrange things.
I should add that I'm using release
I did the first part of that... ran dark.exe myclient.msi -x -o myclient.wxs and got a massive xml file, full of stuff.  I also received directories with things in them... .\Binaries named NewBinary1...NewBinaryX, a collection of DLLs I can only assume come from installshield (difxapp.dll, issetup.dll and many others), .\File with a collection of files name with a leading _ and a random collection of letters and numbers and .\Icon with a file name ARPPRODUCTICON.exe.
What do I do with all of this?  It's overwhelming and seemingly broken to the point where, I don't know if I should just toss it and start from scratch, or sort it out (though... how? Nothing in the xml file makes any sense to me).
The end goal, is to have an installer present a list of products (tree form) with sub-items to be installed or not (drivers, java sdk, c_++ sdk, samples).  Each product might have a different assortment of things associated with it - for example, installing the component to connect to a hardware device containing our product using a network connection, would not install a hardware driver, whereas the component installed to connect to a local (pci-based) hardware product would install the required pci drivers.  The component to connect to another product would install the usb drivers for that product and so on.  Some components might also install additional software to be run as a windows service.  Installation would generate ini files, create empty db files (essentially, the equivalent of 'touch mynew.db') and do other things as required (those actions are currently implemented via insstallscript actions and set to occur at certain times during the installation.
The uninstallation would stop any running services, remove the driver files (again, sometimes using installscript to do so).
Doesn't seem trivial to me, maybe it does to some. I've used wix in the past to create simple installers (though I still found it really hard to learn to use and ended up mangling a wxs file I found so that it ended up doing what I needed).  I am simply overwhelmed and am at a loss as to what to do from here.  Please help!
Many TIA!Jon

More information about the wix-users mailing list