Skip to content

Self-update library for .NET using WiX: DotUpdater


Just published a library I created on one of past jobs out of Updater Application Block and WiX’s ClichThrough component. Please meet: DotUpdater It can auto-update an application, just create a RSS feed of updates and Windows Installer (MSI) binaries.

IListSource.ContainsListCollection explained


Whenever you implement own datasource for .NET GUI binding, you’lll have the choice – whether to implement IList or IListSource. IListSource is a simplistic interface with two members: IList<T> GetList() and bool ContainsListCollection; MSDN help about IListSource.ContainsListCollection states it’s “indicating whether the collection is a collection of IList objects”. MSDN is not true here. If […]

On unit tests in Visual Studio 2008 vs NUnit


Comparison of Microsoft Visual Studio unit tests (MSTest) vs NUnit, mentioning PartCover and

MSBuild don’ts


MSBuild tips: some things you shouldn’t do, and what to do instead.

Bootstrapper also can’t install your application after rebooting…


Another problem with MSBuild bootstrappers that can screw all your installation… If scheduling reboot after installing .NET or other prerequisites, bootstrapper copies itself to run from TEMP on boot. Why not staying where it is – who knows. And definitely, all the other MSIs are not copied, so it won’t find them. Reproduced for me. […]

Can’t run .NET bootstrapper from an MSI


Now I know it. It’s Windows Installer error 1618 that I didn’t see somewhy when attempting to fix .NET bootstrapper. Either I was inattentive or it wasn’t there: “Another copy of msiexec is running”. You can’t have two Windows Installers running, at least if one of them installs .NET. Information is from this maillist post. […]

MSBuild bootstrapper for .NET 3.0 broken?


After Microsoft didn’t include .NET 3.5 in any current release of Windows (read “Vista service pack 1”), some of us developers who believed in long-ago C# 3.0 ads, had to roll back to .NET 3.0 and C# 2.0. Including me. Not mentioning pain of rolling back all LINQ tasties in code and debugging our replacements […]

WiX linkdump: samples and howto-s I found, mostly .NET deployment


Some pages that somewhy didn’t appear at top of Google searches for WiX help. – pretty useful and contains some snippets you won’t find in WiX manual or tutorial. Many of rare code snippets WiX development releases; some broken (last two broken in VS 2008), some contain the very things you’ll need; Justin Rockwood’s […]

NAnt vs MSBuild funnies


All the software is equally bad… Well, I know some pieces of software that are good, but I won’t mention them today. One of our msbuild vs nant choice criteria is  a product versioning support. Sad or funny things are: both don’t include sane tool out of box; both need installing NAntContrib or MSBuild Community […]

Auto-update with WiX


Update: for a ready solution (library), see official release announcement 🙂 Windows Installer on itself is a pain. WiX saves you from it, mostly wrapping the complexity into XML constructs understandable to non-gurus. Well, not completely – you still have to know: why the heck shortcut didn’t appear in start menu; how to create a […]

Choosing MSBuild/TeamBuild vs NAnt


We’re choosing a build tool for VS 2008 project. I’m not expert in any, only had put together a couple of NAnt scripts. So I give no objective technical information in this post, just impressions. First discussion of this choice, back in 2005, is almost strictly in favor of NAnt. Though, read it to know […]

Multithreading in WPF: getting started


Couple of things to know when starting a new thread in WPF application