RobMensching.com /Blog
WiX, Live Mesh and more.

Posted by
Rob Mensching
Thursday, November 08, 2007 11:42 PM

Under
wix

6 Comments

WiX v3 on the road to .NET Framework 2.0.

A couple weeks ago I sent out a proposal to move the WiX v3 toolset to the .NET Framework 2.0. There wasn't much of a response but those that did were positive towards the proposal. I think most people just assumed that the WiX toolset required the .NET Framework 2.0 already. I also think that most developers have already adopted the 2.0 CLR so the dependency is no big deal. Finally, I also expect those developers still building on the .NET Framework 1.1 are probably using the WiX v2 toolset.

Anyway, tonight Bob and I started the process of going through all the tools that still build for the 1.1 CLR (candle, light, dark, heat, pyro, melt, wix.dll, almost all of the extensions, basically everything <smile/>) and converting their NAnt .build files into MSBuild .csproj files. Technically speaking we could just continue to NAnt but I get continued requests to use MSBuild (everyone has their reasons, the most common being that VS natively understands MSBuild projects) so I figured now would be a good time to do the switch.

Of course, there are some tricky things we do in the WiX toolset (like removing the insignificant white space and comments from XML files before embedding them into an assembly) that are turning out to be interesting exercises to execute in MSBuild. A long while ago, Justin created a bunch of MSBuild tasks for many of the things we needed to do. Unfortunately, tonight we learned a couple of them didn't work. Figures that Justin wouldn't show up tonight as well. <smile/>

So progress is underway. I expect it'll be a couple a another week or three to get done with the holidays coming up. We basically have to do the whole move at one time once we start with wix.dll, since everything is dependent on that assembly. I'll send out more updates when we have them.

 


6 Comments

Comment by
Simon
Friday, November 09, 2007 3:11 AM

Any particular msbuild custom tasks you are still lacking?
I might be able to contribute if so ...

And yes, switching WiX3 build system to .NET 2 and msbuild is IMO the right thing to do.

Comment by
Mike Dimmick
Friday, November 09, 2007 3:44 AM

FlattenXml is an EXE - I don't quite see the problem? Or are you having trouble getting FlattenXml to build? I don't quite see how because as of 3.0.3419 at least, MSBuild is already being used to build FlattenXml.exe!

Comment by
Christopher Painter
Friday, November 09, 2007 6:21 AM

Just as in installs, anytime you can remove a development and build dependency, it's a good thing to do.

Personally I think TFS rocks and I'd be very interested in seeing how WiX would look on CodePlex.

Comment by
Mike Green
Friday, November 09, 2007 11:13 PM

As the .NET Framework 3.5 will be available before the end of this month (http://www.microsoft.com/presspass/press/2007/nov07/11-05TechEdDevelopersPR.mspx), I suggest making the switch to that version instead.

Comment by
Mike Green
Friday, November 09, 2007 11:56 PM

By the way, the comment form on this blog works fine in ‘Fixed Layout’. If you switch to ‘Elastic Layout’, the input fields of the form become separated from their descriptions. Then it is not possible to tell which field is the Name, Email or Website input field.

Comment by
Mike Green
Monday, November 19, 2007 9:19 AM

I realise today that the .NET Framework 3.5 is similar to the .NET Framework 3.0 in that it extends the .NET Framework 2.0 rather than being an alternative, side-by-side implementation. Therefore, my suggestion of moving to the .NET Framework 3.5 probably doesn’t have much meaning within the context of WiX. It is probably better to stick with the idea of simply moving to the .NET Framework 2.0, as originally planned.

Leave a Comment

(optional)