views:

198

answers:

3

I need to create a WiX Extension to handle interacting with the HTTP API (httpapi.dll) so that I can set URLACLs and SSL bindings for a WCF service that is being installed.

As I understand it, I need to create a WiX Compiler Extension, so that I can define an XML grammar (XSD), and then implement a Compiler to turn the XML into records in tables defined in the MSI.

I have most of that up and running, but I am stumped on how to set up my project to use the XsdGen custom tool, and I am sure there are more issues lurking around the corner after that.

Can anyone point me towards a full tutorial that shows how to create a Wix Compiler Extension?

A: 

Expecting a full tutorial is a bit optimistic. Writing a wix extension is a very advanced use case that very few people will ever need to do. Instead, you can take a look at the source of all the official extensions in the wix source code.

Wim Coenen
I've already done that, where I am stuck is configuring my environment - particularly being able to import the MSBuild targets that give me access to things like the XsdGen custom tool. Looking at the source code is not really going to help me with that.
Bryan Batchelder
+1  A: 

XsdGen is defined in WixBuild.Common.targets for the WiX build itself; it's not exposed via the "normal" wix.targets. You can run xsdgen.exe in a prebuild event instead.

Bob Arnson
A: 

You might take a look at the extensions in the WiX contrib project. Since they aren't part of the WiX toolset they have the extra steps needed to build the extension.

Rob Mensching

related questions