Direct3D Graphics Pipeline Sample Code

I’ve created a project on codeplex,, to house the sample code from my book. It will also be used to distribute sample code on other Direct3D related articles that I write on this blog. Initially you will find the code from my article on description helpers, but I will be uploading the sample code from the book there in the next few days.

Direct3D Graphics Pipeline Sample Code Installer Bug Found

OK, I was finally able to reproduce this problem with the installer and the issue comes down to something downright weird. If I’m running dbmon or DebugView while the installer is running, then the code installs fine. If I’m not running a debug monitor, then the installation fails with no useful information in the log message (other than the custom action return code is 3, which indicates an error).

So now that I’ve found the bug, I’ll investigate getting an updated installer uploaded that corrects the problem.

Direct3D Graphics Pipeline Update

Its been quite a while since I uploaded a new version of the draft of my book. Rest assured, I’m still working on the book and I really do plan on finishing it someday! However, I’ve gotten some feedback that the installer for the samples will sometimes fail. Since I haven’t gotten any detailed log files back from anyone who experienced the failure, I’ve been trying to figure out how to diagnose the problem and correct it. The samples also needed updating to Visual Studio .NET 2005 — and I guess now they’ll need updating to Visual Studio .NET 2008! So I’ve been working on my installer code by fitting unit tests to the code in an attempt to find the underlying problem that people have reported. My manual testing with old versions of Windows (that need updating of their DirectX runtime) with VMWare haven’t reproduced the problem that people have described, so I’m hoping that fitting everything in the installer with unit tests will help me identify the problem. I’ll also be converting the installer for the sample code to use WiX (Windows Installer XML) instead of the deployment project type in Visual Studio. This will make the installer more robust and will eliminate the script hackiness I had to do in my white paper. It will also make the installer source accessible to people who don’t have the Professional edition of Visual Studio since it will use only free tools. Once all the samples and source have been appropriately updated, I’ll go back to incorporating 9.0c changes into my manuscript.