<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd"
	xmlns:media="http://search.yahoo.com/mrss/"
>

<channel>
	<title>RambleJam</title>
	<atom:link href="http://jammer.biz/blog2/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://jammer.biz/blog2</link>
	<description>My little rambles in cyberspace ...</description>
	<pubDate>Sat, 19 Feb 2011 13:26:51 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
	<language>en</language>
		<!-- podcast_generator="podPress/8.8" -->
		<copyright>&#xA9; </copyright>
		<managingEditor>jammer@jammer.biz ()</managingEditor>
		<webMaster>jammer@jammer.biz()</webMaster>
		<category></category>
		<ttl>1440</ttl>
		<itunes:keywords></itunes:keywords>
		<itunes:subtitle></itunes:subtitle>
		<itunes:summary>My little rambles in cyberspace ...</itunes:summary>
		<itunes:author></itunes:author>
		<itunes:category text="Society &amp; Culture"/>
		<itunes:owner>
			<itunes:name></itunes:name>
			<itunes:email>jammer@jammer.biz</itunes:email>
		</itunes:owner>
		<itunes:block>No</itunes:block>
		<itunes:explicit>no</itunes:explicit>
		<itunes:image href="http://jammer.biz/blog2/wp-content/plugins/podpress/images/powered_by_podpress_large.jpg" />
		<image>
			<url>http://jammer.biz/blog2/wp-content/plugins/podpress/images/powered_by_podpress.jpg</url>
			<title>RambleJam</title>
			<link>http://jammer.biz/blog2</link>
			<width>144</width>
			<height>144</height>
		</image>
		<item>
		<title>SSL MakeCert / pvk2pfx &#038; Client &#038; Server Certificate Generation</title>
		<link>http://jammer.biz/blog2/?p=231</link>
		<comments>http://jammer.biz/blog2/?p=231#comments</comments>
		<pubDate>Sat, 19 Feb 2011 13:26:51 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[.NET / C#]]></category>

		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Web Stuff]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=231</guid>
		<description><![CDATA[Hey All,
Hope we&#8217;re all well!  Been a while since I blogged anything as life has been pretty hectic.  Anyway, I&#8217;m working on a fairly intense little project at the moment centred around building a complete system infrastucture around the AdventureWorks demo database from Microsoft.
The demo system may well end up being another Code Project article [...]]]></description>
			<content:encoded><![CDATA[<p>Hey All,</p>
<p>Hope we&#8217;re all well!  Been a while since I blogged anything as life has been pretty hectic.  Anyway, I&#8217;m working on a fairly intense little project at the moment centred around building a complete system infrastucture around the <a href="http://msftdbprodsamples.codeplex.com/" target="_blank">AdventureWorks</a> demo database from Microsoft.</p>
<p>The demo system may well end up being another Code Project article as it&#8217;s covering a LOT of terriroty.  WPF, PRISM, WCF, WIF, SQL but mainly focussing on security aspect of the implementation using the <a href="http://msdn.microsoft.com/en-us/security/aa570351" target="_blank">Windows Identity Foundation</a>.</p>
<p>In order to make the implementation as real world as possible the idea behind WIF makes use of SSL certificates for authentication purposes.  Whilst not wanting to go buying commercial certificates and seeing this is only development we need to use the makecert tool that is part of the Windows SDK.</p>
<p>To make a test CA (Certificate Authority) you can use the following command:</p>
<p>makecert -r -pe -n &#8220;CN=AdventureWorksTestCA&#8221; -sr CurrentUser -a sha1 -sky signature -cy authority -sv AdventureWorksTestCA.pvk AdventureWorksTestCA.cer</p>
<p>To make a test server authentication certificate:</p>
<p>makecert -pe -n &#8220;CN=AdventureWorksTestServer&#8221; -a sha1 -sky exchange -eku 1.3.6.1.5.5.7.3.1 -ic AdventureWorksTestCA.cer -iv AdventureWorksTestCA.pvk -sv AdventureWorksTestServer.pvk AdventureWorksTestServer.cer</p>
<p>To make a test client authentication certificate:</p>
<p>makecert -pe -n &#8220;CN=AdventureWorksTestClient&#8221; -a sha1 -sky exchange -eku 1.3.6.1.5.5.7.3.2 -ic AdventureWorksTestCA.cer -iv AdventureWorksTestCA.pvk -sv AdventureWorksTestClient.pvk AdventureWorksTestClient.cer</p>
<p>Then to export the PFX files for both certificates:</p>
<p>pvk2pfx -pvk AdventureWorksTestServer.pvk -spc AdventureWorksTestServer.cer -pfx AdventureWorksTestServer.pfx</p>
<p>pvk2pfx -pvk AdventureWorksTestClient.pvk -spc AdventureWorksTestClient.cer -pfx AdventureWorksTestClient.pfx</p>
<p>Now once you have your certificates created you need to import them into your certificate store.  Start with the CA certificate, double click the .cer file and click on the [install certificate] button.  Once the dialog box opens make sure you import this certificate into the &#8220;Trusted Root Certification Authorities&#8221; store.  This is critical to ensure the other certificates are correctly chained up to trusted root.</p>
<p>Once this CA is installed you can simply go through the same process with the client and server certificates and allow them to simply import into their default location (don&#8217;t manually specify the store during import).  The client/server certs will import themselves into the Current User - Personal certificate store.</p>
<p>Now you should be all set-up with a CA/Server/Client certs ready for dev work.</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=231</wfw:commentRss>
		</item>
		<item>
		<title>Windows 7 &#038; Midisport 8&#215;8 Drivers</title>
		<link>http://jammer.biz/blog2/?p=229</link>
		<comments>http://jammer.biz/blog2/?p=229#comments</comments>
		<pubDate>Thu, 26 Aug 2010 15:20:18 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Music]]></category>

		<category><![CDATA[Tools]]></category>

		<category><![CDATA[Windows 7 64 Bit]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=229</guid>
		<description><![CDATA[At last it appears that M-Audio has finally released public beta drivers for their older midi units.  I was dreading having to buy a new midi interface considering how many midi devices I have.  I&#8217;ve not tried these drivers myself as yet but it appears that many people are having success with them.
Download them from [...]]]></description>
			<content:encoded><![CDATA[<p>At last it appears that M-Audio has finally released public beta drivers for their older midi units.  I was dreading having to buy a new midi interface considering how many midi devices I have.  I&#8217;ve not tried these drivers myself as yet but it appears that many people are having success with them.</p>
<p><a href="http://www.m-audio.com/index.php?do=support.faq&amp;ID=0a1a1698430abbf2e7ee81c346f15396">Download them from here</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=229</wfw:commentRss>
		</item>
		<item>
		<title>Looking for a Free VST Sampler?</title>
		<link>http://jammer.biz/blog2/?p=228</link>
		<comments>http://jammer.biz/blog2/?p=228#comments</comments>
		<pubDate>Thu, 12 Aug 2010 10:13:07 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Music]]></category>

		<category><![CDATA[Tools]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=228</guid>
		<description><![CDATA[A short while ago I was looking for a free VST sampler that would offer enough flexibility to be useful and stable enough in my SONAR setup to be worth sticking with, as it turns out I&#8217;ve found a couple of seriously good products and more importantly, they are free!
I would dearly love to splash [...]]]></description>
			<content:encoded><![CDATA[<p>A short while ago I was looking for a free VST sampler that would offer enough flexibility to be useful and stable enough in my SONAR setup to be worth sticking with, as it turns out I&#8217;ve found a couple of seriously good products and more importantly, they are free!</p>
<p>I would dearly love to splash the case on a copy of Komplete from Native Instruments but I just don&#8217;t have that kind of cash free at the moment.  So, which samplers are we talking about?</p>
<p>Short Circuit</p>
<p>First up is this really neat, lightweight tool from <a href="http://vemberaudio.se/shortcircuit.php">Vember Audio</a>, unfortunately this isn&#8217;t actually supported anymore as it has been moved to freeware status.  Having said that I&#8217;ve loaded it up into SONAR and imported some NI Battery kits (created with <a href="http://www.jamsoft.co.uk/samplesort.php">SampleSort</a>) and haven&#8217;t any *any* issues whatsoever.  As far as I can tell Short Circuit is rock solid.  It has a great feature set to boot, granted it&#8217;s not Kontakt but if you&#8217;re looking for a very lightweight solid sampler this is fantastic.</p>
<p>Independence Free</p>
<p>When I found this I was genuinely amazed.  <a href="http://www.yellowtools.us/cp21/cms/index.php?id=842">Yello Tools</a> are giving you their main sampler software for free along with a massive 2+Gb sample set.  This is quite a tool and to be honest as far as I can tell (limited use so far) it&#8217;s comparable to Kontakt.  Well worth checking out.  The only limitation this has is that it will only load 25 samples so loading up a nice Grand Piano multisample is out of the question &#8230; oh well &#8230; it is free!!</p>
<p>Now, go forth and sample &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=228</wfw:commentRss>
		</item>
		<item>
		<title>Installing SQL Management Studio Express on Windows 7</title>
		<link>http://jammer.biz/blog2/?p=227</link>
		<comments>http://jammer.biz/blog2/?p=227#comments</comments>
		<pubDate>Tue, 13 Jul 2010 21:21:43 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Windows 7 64 Bit]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=227</guid>
		<description><![CDATA[Hmm &#8230; developers usually use tools &#8230; yes?
Getting this installed on Windows 7 by double clicking the MSI doesn&#8217;t appear to work.  No, we have to run cmd.exe as Administrator then use MSIEXEC &#8230;
C:\&#62;msiexec /i F:\VS2008Stuff\SQL\SQLServer2005_SSMSEE_x64.msi
Hmm &#8230;
]]></description>
			<content:encoded><![CDATA[<p>Hmm &#8230; developers usually use tools &#8230; yes?</p>
<p>Getting this installed on Windows 7 by double clicking the MSI doesn&#8217;t appear to work.  No, we have to run cmd.exe as Administrator then use MSIEXEC &#8230;</p>
<p>C:\&gt;msiexec /i F:\VS2008Stuff\SQL\SQLServer2005_SSMSEE_x64.msi</p>
<p>Hmm &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=227</wfw:commentRss>
		</item>
		<item>
		<title>WiX UI Not Updating As Expected</title>
		<link>http://jammer.biz/blog2/?p=226</link>
		<comments>http://jammer.biz/blog2/?p=226#comments</comments>
		<pubDate>Tue, 06 Jul 2010 09:23:59 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Deployment]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=226</guid>
		<description><![CDATA[During my recent forays into the world of WiX I&#8217;ve been slowly hacking away at the steep learning curve.  This really is a huge framework that is dealing with an intrisically complicated process.  For my own projects I&#8217;ve always stuck with Inno Setup and to be honest I don&#8217;t have any compelling reason [...]]]></description>
			<content:encoded><![CDATA[<p>During my recent forays into the world of WiX I&#8217;ve been slowly hacking away at the steep learning curve.  This really is a huge framework that is dealing with an intrisically complicated process.  For my own projects I&#8217;ve always stuck with <a title="Inno Setup Website" href="http://www.jrsoftware.org/isinfo.php" target="_blank">Inno Setup</a> and to be honest I don&#8217;t have any compelling reason to move them away from Inno at the moment as they are functioning as expected.</p>
<p>Anyway, the last problem I&#8217;ve encountered that took a question to the WiX mailing list to answer was regarding showing messages conditionally in the UI based on custom property values changing.  What was confusing was that the log file showed all the custom actions and properties being correctly processed but the UI never actually updated.  Sound familiar?  If you&#8217;r having this problem, simply try hitting the back or next button and then go back to the dialog that should have updated?  I bet you now see the updated value in the UI (provided all your WiX source is correct of course!).</p>
<p>This issue is that dialogs are never redrawn.  This is actually a limitation in the MSI UI implementation.  Whilst I haven&#8217;t looked into alternatives like replacing the MSI UI (lots of work apparently) there is a hacky solution to this.  Making twin dialogs &#8230; basically you create an exact copy of the dialog that should be updated and then once the property changes you simply show this twin dialog and it will appear as though the UI has updated when in fact it&#8217;s showing an entirely new dialog.</p>
<p>In the snippet below you can see that the last published event is the call to the current dialogs twin.  You will need to give the twin dialog a new Id but all the others can remain the same.  Not a nice solution as you now have two dialogs to maintain with any changes but it is a solution none-the-less.</p>
<textarea name="code" class="xml:nogutter" cols="60" rows="10">
<Control Id="TestDbConnection" Type="PushButton" Width="100" Height="17" X="19" Y="202" Text="Test Connection" TabSkip="no">
    <Publish Event="DoAction" Value="SetGeneratedConnectionString">1</Publish>
    <Publish Event="DoAction" Value="CheckDataAccessCa">1</Publish>
    <Publish Event="NewDialog" Value="DatabaseConfigTwinDlg">1</Publish>
</Control>
</textarea>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=226</wfw:commentRss>
		</item>
		<item>
		<title>Managed Custom Actions Failing in WiX?</title>
		<link>http://jammer.biz/blog2/?p=225</link>
		<comments>http://jammer.biz/blog2/?p=225#comments</comments>
		<pubDate>Fri, 02 Jul 2010 13:53:22 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Deployment]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=225</guid>
		<description><![CDATA[Well after many hours wondering why my WiX custom actions were failing to run I made an interesting discovery.  The library that I had created to hold my custom actions was all being referenced correct from the main WiX project code in a separate WiX fragment, like this:

	
    
    [...]]]></description>
			<content:encoded><![CDATA[<p>Well after many hours wondering why my WiX custom actions were failing to run I made an interesting discovery.  The library that I had created to hold my custom actions was all being referenced correct from the main WiX project code in a separate WiX fragment, like this:</p>
<textarea name="code" class="xml:nogutter" cols="60" rows="10">
	<Fragment Id="CheckDatabaseAccessCa">
    <CustomAction Id="CheckDataAccessCa" BinaryKey="ProjectName.dll" DllEntry="CheckDatabaseConnection" Execute="immediate" Return="check" />
    <Binary Id="ProjectName.dll" SourceFile="$(var.ProjectName.TargetDir)$(var.ProjectName.TargetName).CA.dll"/>
  </Fragment>
</textarea>
<p>Changing any part of this made the build process fail so it was finding the dll and adding it to the MSI package correctly.  The first line of the custom action being called was a call to launch a debugger so that I could then step through the method and see it in action, this was never being called so it wasn&#8217;t even getting this far.</p>
<textarea name="code" class="csharp:nogutter" cols="60" rows="10">
System.Diagnostics.Debugger.Launch();
</textarea>
<p>Anyway, I have now cracked this particular problem.  As it happens the library containing the custom action was compiled for .NET 4.0 &#8230; as soon as I switched this to either .NET 2.0 or .NET 3.5 all is happy.  All I can assume is that since WiX itself is .NET 3.5 that is the version that is loaded into the process by default.  So when the MSI tried to access my custom action in a .NET 4.0 library it simply bombed the whole process.</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=225</wfw:commentRss>
		</item>
		<item>
		<title>Building Installers</title>
		<link>http://jammer.biz/blog2/?p=224</link>
		<comments>http://jammer.biz/blog2/?p=224#comments</comments>
		<pubDate>Thu, 01 Jul 2010 08:53:09 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[.NET / C#]]></category>

		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Deployment]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=224</guid>
		<description><![CDATA[If you are ever in a situation where you are building an installer for an application and things have gone a bit awry with the uninstall process (tut, tut) there is a nice simple way to get yourself back on track.  Simply run the command below and this will force an uninstall of the product [...]]]></description>
			<content:encoded><![CDATA[<p>If you are ever in a situation where you are building an installer for an application and things have gone a bit awry with the uninstall process (tut, tut) there is a nice simple way to get yourself back on track.  Simply run the command below and this will force an uninstall of the product matching the GUID supplied in the command.</p>
<p>Msiexec /x {your-product-guid-code} IGNORE_PRE_CHECK=1</p>
<p>I&#8217;ve not needed this yet but no doubt it&#8217;s worth blogging about as it will rear it&#8217;s ugly head at some point!</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=224</wfw:commentRss>
		</item>
		<item>
		<title>WPF / WinForms Property Mappings</title>
		<link>http://jammer.biz/blog2/?p=223</link>
		<comments>http://jammer.biz/blog2/?p=223#comments</comments>
		<pubDate>Thu, 20 May 2010 08:16:53 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[.NET / C#]]></category>

		<category><![CDATA[Computing]]></category>

		<category><![CDATA[WPF / XAML]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=223</guid>
		<description><![CDATA[Just found a nice page on the Microsoft site that details some of the property mappings between WPF and Windows Forms.  Might prove useful!!
http://msdn.microsoft.com/en-us/library/ms751565.aspx
]]></description>
			<content:encoded><![CDATA[<p>Just found a nice page on the Microsoft site that details some of the property mappings between WPF and Windows Forms.  Might prove useful!!</p>
<p><a href="http://msdn.microsoft.com/en-us/library/ms751565.aspx">http://msdn.microsoft.com/en-us/library/ms751565.aspx</a></p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=223</wfw:commentRss>
		</item>
		<item>
		<title>VS2010 / C# 4.0 RC Samples</title>
		<link>http://jammer.biz/blog2/?p=222</link>
		<comments>http://jammer.biz/blog2/?p=222#comments</comments>
		<pubDate>Sat, 10 Apr 2010 11:46:26 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[.NET / C#]]></category>

		<category><![CDATA[Computing]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=222</guid>
		<description><![CDATA[I&#8217;ve just installed the new version of Visual Studio to start looking at some of the new .NET and C# features and found a rather nice set of code samples on MSDN.
]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve just installed the new version of Visual Studio to start looking at some of the new .NET and C# features and found a rather nice set of <a href="http://code.msdn.microsoft.com/cs2010samples">code samples on MSDN</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=222</wfw:commentRss>
		</item>
		<item>
		<title>Windows 7 Update</title>
		<link>http://jammer.biz/blog2/?p=221</link>
		<comments>http://jammer.biz/blog2/?p=221#comments</comments>
		<pubDate>Sat, 03 Apr 2010 19:43:44 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Windows 7 64 Bit]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=221</guid>
		<description><![CDATA[I have now completed the majority of the setup on my new PC.  All in all I&#8217;m seriously impressed with Win 7 Pro.  I have solved all the BSOD issues (Dodgy audio driver from MOTU) and I have migrated all my data accros to the new machine.
It hasn&#8217;t been completely painless but all in all [...]]]></description>
			<content:encoded><![CDATA[<p>I have now completed the majority of the setup on my new PC.  All in all I&#8217;m seriously impressed with Win 7 Pro.  I have solved all the BSOD issues (Dodgy audio driver from MOTU) and I have migrated all my data accros to the new machine.</p>
<p>It hasn&#8217;t been completely painless but all in all it has been a real pleasure.  All my hardware is working as desired and the machine is blisteringly quick.</p>
<p>Absolute thumbs up from here.</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=221</wfw:commentRss>
		</item>
		<item>
		<title>Getting Aero Back</title>
		<link>http://jammer.biz/blog2/?p=220</link>
		<comments>http://jammer.biz/blog2/?p=220#comments</comments>
		<pubDate>Sat, 03 Apr 2010 09:12:54 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Windows 7 64 Bit]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=220</guid>
		<description><![CDATA[Whilst I was installing my various apps on my new system I suddenly noticed that the Aero theme had completely vanished.  I had previously installed my copy of Spore which also installed DirectX 9.0c and I assumed that this may be the reason.
The Desktop had switched back to classic mode and no matter how I [...]]]></description>
			<content:encoded><![CDATA[<p>Whilst I was installing my various apps on my new system I suddenly noticed that the Aero theme had completely vanished.  I had previously installed my copy of Spore which also installed DirectX 9.0c and I assumed that this may be the reason.</p>
<p>The Desktop had switched back to classic mode and no matter how I tried I could not find anything related to getting it back.  Even selected one of the preinstalled Aero themes didn&#8217;t switch correctly.  After a long slog around the internet I had found a few things to try.</p>
<p>The first was the obvious system reboot.  Nothing changed.  I then checked that the two services that manage this in the background were running correctly.  The two services are:</p>
<ul>
<li>Desktop Window Manager Session Manager</li>
<li>Themes</li>
</ul>
<p>These were both correctly running and setup to start Automatically when the OS boots.  The next thing I tried was to run <a href="http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/system_file_checker.mspx?mfr=true">System File Checker</a>,  to run this open a command prompt and execute this command:</p>
<p>Sfc /scannow</p>
<p>This performed a file system check on the machine but didn&#8217;t find any problems.  I then ran the Aero Troubleshooter and the online diagnostic tool both of which didn&#8217;t find any issues.  Still no Aero theme on my machine.</p>
<p>I then simple restarted the Desktop Window Manager Session Manager service and low and behold Aero returned!  That is very puzzling since I performed a reboot on the machine which would have obviously restarted this service when the OS rebooted.</p>
<p>Basically, I had installed an older application (pre-Vista) called Starry Night Pro 4.5, now when I launch this app Windows 7 turns off Aero as the application loads using OpenGL but now when I close this application Windows 7 correctly re-enables Aero.  Happy Days!</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=220</wfw:commentRss>
		</item>
		<item>
		<title>Window 7 64 Bit / MOTU Traveler</title>
		<link>http://jammer.biz/blog2/?p=219</link>
		<comments>http://jammer.biz/blog2/?p=219#comments</comments>
		<pubDate>Fri, 02 Apr 2010 12:32:04 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Windows 7 64 Bit]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=219</guid>
		<description><![CDATA[Well, I&#8217;ve finally made the switch to a new computer running the latest 64 bit version of Windows 7.  I have a new Intel Quad Core i7 920 based development machine and I have to say that so far I&#8217;m impressed.  The whole OS feels really sharp and responsive, even with the full [...]]]></description>
			<content:encoded><![CDATA[<p>Well, I&#8217;ve finally made the switch to a new computer running the latest 64 bit version of Windows 7.  I have a new Intel Quad Core i7 920 based development machine and I have to say that so far I&#8217;m impressed.  The whole OS feels really sharp and responsive, even with the full Aero theme running.</p>
<p>The first two apps to be installed were Firefox and Thunderbird.  Both of these apps installed in less than a second!!  The speed is literally staggering in comparison to my old single core 2.4Ghz Athlon 64 machine.</p>
<p>The new tweaks to the Windows UI are really nice, the jump menus are a really nice addition as are all the window docking options.  I always disliked the way XP handled arranging multiple windows, feels much tighter and &#8216;thought through&#8217; in Windows 7.</p>
<p>With all that said I have seen a few BSODs!!  However, it is totally unfair to blame either than PC hardware or Windows 7 for this as it appears that my MOTU Travelers 64bit drivers are the source of these blue screens.  I have just installed a newer set of drivers which were released on the 10th March so I&#8217;m about to give these a try and see it the systems behaves better.</p>
<p>All in all this is a very big thumbs up from here.</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=219</wfw:commentRss>
		</item>
		<item>
		<title>C# Generic List with a Fluent Interface</title>
		<link>http://jammer.biz/blog2/?p=218</link>
		<comments>http://jammer.biz/blog2/?p=218#comments</comments>
		<pubDate>Mon, 01 Mar 2010 20:22:46 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[.NET / C#]]></category>

		<category><![CDATA[Computing]]></category>

		<category><![CDATA[General Jamblings]]></category>

		<category><![CDATA[Music]]></category>

		<category><![CDATA[Nature]]></category>

		<category><![CDATA[Science]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=218</guid>
		<description><![CDATA[I was just working on some little data provider classes in a sandbox solution.  Just playing around with design patterns and I need a bit of data, nothing major.  A handful of classes that can act as little databases / data sources for my sandbox.  Just to make list a bit easier making lists of [...]]]></description>
			<content:encoded><![CDATA[<p>I was just working on some little data provider classes in a sandbox solution.  Just playing around with design patterns and I need a bit of data, nothing major.  A handful of classes that can act as little databases / data sources for my sandbox.  Just to make list a bit easier making lists of things in code I made this generic wrapper so make my code look nicer &#8230;</p>
<div style="font-family: Consolas; font-size: 12pt; color: black; background: white;">
<p style="margin: 0px;"><span style="color: blue;">using</span> System.Collections.Generic;</p>
<p style="margin: 0px;">&nbsp;</p>
<p style="margin: 0px;"><span style="color: blue;">namespace</span> JamSoft.Mvvm.ToyBox.Core</p>
<p style="margin: 0px;">{</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; <span style="color: blue;">public</span> <span style="color: blue;">class</span> <span style="color: #2b91af;">FluentList</span>&lt;T&gt; : <span style="color: #2b91af;">List</span>&lt;T&gt;</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; {</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">public</span> <span style="color: blue;">new</span> <span style="color: #2b91af;">FluentList</span>&lt;T&gt; Add(T obj)</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">base</span>.Add(obj);</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">return</span> <span style="color: blue;">this</span>;</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }</p>
<p style="margin: 0px;">&nbsp;</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">public</span> <span style="color: blue;">new</span> <span style="color: #2b91af;">FluentList</span>&lt;T&gt; AddRange(<span style="color: #2b91af;">IEnumerable</span>&lt;T&gt; objs)</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; {</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">base</span>.AddRange(objs);</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">return</span> <span style="color: blue;">this</span>;</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; }</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; }</p>
<p style="margin: 0px;">}</p>
</div>
<p>So, once you have this in your solution you can start to do things like this in code:</p>
<div style="font-family: Consolas; font-size: 12pt; color: black; background: white;">
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; <span style="color: blue;">var</span> stringList = <span style="color: blue;">new</span> <span style="color: #2b91af;">FluentList</span>&lt;<span style="color: blue;">string</span>&gt;()</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; .Add(<span style="color: #a31515;">&quot;Moon&quot;</span>)</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; .Add(<span style="color: #a31515;">&quot;Alpha Centauri&quot;</span>)</p>
<p style="margin: 0px;">&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp; .Add(<span style="color: #a31515;">&quot;Sirius&quot;</span>);</p>
</div>
<p>Pretty neat things these fluent ideas &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=218</wfw:commentRss>
		</item>
		<item>
		<title>Silverlight, IIS &#038; Attach to Process</title>
		<link>http://jammer.biz/blog2/?p=217</link>
		<comments>http://jammer.biz/blog2/?p=217#comments</comments>
		<pubDate>Sun, 21 Feb 2010 18:00:31 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=217</guid>
		<description><![CDATA[This had me stumped for a bit.  I kept attaching to aspnet_wp.exe and wondering why my breakpoints weren&#8217;t valid &#8230; silly me &#8230;

Add &#8220;.xap&#8221; as a MIME type to IIS (Properties -&#62; HTTP Headers -&#62; MIME Map)
Attach to firefox.exe not aspnet_wp.exe &#8230;  

]]></description>
			<content:encoded><![CDATA[<p>This had me stumped for a bit.  I kept attaching to aspnet_wp.exe and wondering why my breakpoints weren&#8217;t valid &#8230; silly me &#8230;</p>
<ul>
<li>Add &#8220;.xap&#8221; as a MIME type to IIS (Properties -&gt; HTTP Headers -&gt; MIME Map)</li>
<li>Attach to firefox.exe not aspnet_wp.exe &#8230; <img src='http://jammer.biz/blog2/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=217</wfw:commentRss>
		</item>
		<item>
		<title>Visual Studio 2010 - First Impressions / WPF UI</title>
		<link>http://jammer.biz/blog2/?p=216</link>
		<comments>http://jammer.biz/blog2/?p=216#comments</comments>
		<pubDate>Sat, 20 Feb 2010 20:15:25 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[.NET / C#]]></category>

		<category><![CDATA[Computing]]></category>

		<category><![CDATA[WPF / XAML]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=216</guid>
		<description><![CDATA[I&#8217;ve been putting this off for a while now but have finally gotten around to checking out Visual Studio 2010.  You can get everything you need from this page, Visual Studio 2010 Getting Started. From start to finish the install took nearly 2 hours to complete, that did also included having to update to [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve been putting this off for a while now but have finally gotten around to checking out Visual Studio 2010.  You can get everything you need from this page, <a href="http://msdn.microsoft.com/en-us/vstudio/dd582936.aspx">Visual Studio 2010 Getting Started</a>. From start to finish the install took nearly 2 hours to complete, that did also included having to update to XP Service Pack 3.</p>
<p>I&#8217;ve been looking forward to this as the Visual Studio team have build the new UI using WPF.  This I think is a bit of a milestone in the life of WPF.  For a long time there were many naysayers in reference to WPF.  The first applications to really show WPF in action were Expression Blend (Sparkle) and Expression Design.  Both really great apps from their respective v1&#8217;s in my opinion.  Having said that I think the requirements for a UI like Visual Studio is stepping it all up a gear.  It feels very conservative in comparison to the flashy WPF &#8216;experiences&#8217; we&#8217;ve become accustomed to seeing and rightly so.  This isn&#8217;t a design playground, it should be function over form imho.  (I hope that doesn&#8217;t start a flame war!).  All in all as you would expect it&#8217;s all very familiar ground.</p>
<p>The XAML code window and preview actually feel faster than in VS2008 which is really great news.  Over the course of the last couple of years I&#8217;ve moved from using Blend in most XAML editing tasks (it&#8217;s still king for some things), to using just the VS2008 designer.  It did the job OK but needed work, the work on the designer is most welcome!</p>
<p>This is completely unscientific and possibly a bit unfair on the app but it does feel less snappy on my dev machine, admittedly an old 2.2Ghz Athlon.  It&#8217;s always a bit unfair to compare versions of applications like this as they have almost invariably increased in complexity at the same time.</p>
<p>The initial colour scheme is actually really nice, all the icons are the same, but there are just those little hints, that the underlying tech is WPF.  The UI feels and looks a lot more modular if that makes sense, the grid splitters are more discreet in appearance and there is a nice absence of millions of right-angles <img src='http://jammer.biz/blog2/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<p>One thing I can&#8217;t help but mention is the intellisense.  I initially thought it wasn&#8217;t working but then realised that it&#8217;s just working in different space-time.  Inordinately slow on this box and I mean slow to the point of having to ignore it as it&#8217;s immediately annoying.  At a class level when accessing a control from the code-behind it takes about 25 seconds to load the intellisense menu.  There seem to be a lot of enhancements to the intellisense so it&#8217;s doing a lot more work in 2010, however that&#8217;s not much help if its this slow.  I can&#8217;t imagine what it would be like if I also had ReSharper in use.</p>
<p>Despite that, within in 10 mins of first opening VS2010 I had made a functioning baby web browser using the WebBrowser control without a single hitch.  All I can say is that it gets a thumbs up from me but I&#8217;m glad that I have a new dev machine on order!!  Great to see WPF in action on a scale like this but I do hope some optimising goes on between now and 2010 RTM.</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=216</wfw:commentRss>
		</item>
		<item>
		<title>DMon - Multi Directory Viewer</title>
		<link>http://jammer.biz/blog2/?p=215</link>
		<comments>http://jammer.biz/blog2/?p=215#comments</comments>
		<pubDate>Wed, 25 Nov 2009 12:57:18 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=215</guid>
		<description><![CDATA[I have just released a new utility application that lets the user monitoring many directory locations in a single view.  If you have ever found yourself in a situation where you have many Windows Explorer instances open watching different directory locations this should make that task a lot easier.
In the current version you can also [...]]]></description>
			<content:encoded><![CDATA[<p>I have just released a new utility application that lets the user monitoring many directory locations in a single view.  If you have ever found yourself in a situation where you have many Windows Explorer instances open watching different directory locations this should make that task a lot easier.</p>
<p>In the current version you can also configure DMon to produce a log file containing all the different actions that were performed on the directories being monitored.  Below is a screen shot of the app and links to more information and the download links.</p>
<p><a href="http://www.jammer.biz/Projects/dmon.php">Read More &amp; Download</a></p>
<p><img src="http://www.jammer.biz/Projects/DMon/JamSoft-DMon-ScreenShot.png" alt="DMon screen shot" width="600" height="450" /></p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=215</wfw:commentRss>
		</item>
		<item>
		<title>MSBuild, TeamCity &#038; Versioning</title>
		<link>http://jammer.biz/blog2/?p=213</link>
		<comments>http://jammer.biz/blog2/?p=213#comments</comments>
		<pubDate>Sun, 01 Nov 2009 19:25:00 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[.NET / C#]]></category>

		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Continuous Integration]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=213</guid>
		<description><![CDATA[I have only recently start using TeamCity at home for my own major project SampleSort.  It is a pretty complex application all in all and the build process is also complex due to the modular nature of its internal structure.  Now this is all controlled by TeamCity it makes proper versioning a real proposition rather [...]]]></description>
			<content:encoded><![CDATA[<p>I have only recently start using <a href="http://www.jetbrains.com/teamcity/" target="_blank">TeamCity</a> at home for my own major project <a href="http://www.jamsoft.co.uk/samplesort.php" target="_blank">SampleSort</a>.  It is a pretty complex application all in all and the build process is also complex due to the modular nature of its internal structure.  Now this is all controlled by <a href="http://www.jetbrains.com/teamcity/" target="_blank">TeamCity</a> it makes proper versioning a real proposition rather than incrementing a version number by hand.  Even though it is possible to version assemblies using the 1.0.* pattern in the version attributes in the AssemblyInfo.cs file this isn&#8217;t the best solution for my particular scenario.</p>
<p>Now if you are using source control it is useful to have the version number of the source incorporated into the overall application version.</p>
<p>Using <a href="http://www.jetbrains.com/teamcity/" target="_blank">TeamCity</a> I have manually set the Major and Minor so that I have some control over it but the build number comes from <a href="http://www.jetbrains.com/teamcity/" target="_blank">TeamCity</a> and the revision is taken from my Subversion repository.  To do this you need to use a pattern like this in the &#8216;Build Number Format&#8217; setting on the General Settings page of your build configuration:</p>
<p>0.6.{0}.{build.vcs.number}</p>
<p>The 0.6 section is the portion I retain control over, the {0} is filled in by <a href="http://www.jetbrains.com/teamcity/" target="_blank">TeamCity</a> an the {build.vcs.number} is the Subversion repository number.</p>
<p>Now to make use of this in the build process you need to access this information and update the AssemblyInfo.cs files BEFORE the build system performs the Release build. I looked at the community tasks for the AssemblyInfoTask but was a little put off.  For one thing it creates the file rather than edits the existing one, which is a 20+ project scenario would result in a fairly hefty build script.  All I wanted to so was update the existing AssemblyInfo files.  So, my MSBuild target is as follows:</p>
<textarea name="code" class="xml:nogutter" cols="60" rows="10">
	<PropertyGroup>
		<Version>$(BUILD_NUMBER)</Version>
	</PropertyGroup>

	<Target Name="VersionAssemblies">
		<Attrib Files="@(AssemblyInfoFiles)" Normal="true"/>
		<FileUpdate Files="@(AssemblyInfoFiles)"
								Regex="AssemblyVersion\s*\(\s*&quot;.*&quot;\s*\)\s*\]"
								ReplacementText="AssemblyVersion(&quot;$(Version)&quot;)]"/>
		<FileUpdate Files="@(AssemblyInfoFiles)"
								Regex="AssemblyFileVersion\s*\(\s*&quot;.*&quot;\s*\)\s*\]"
								ReplacementText="AssemblyFileVersion(&quot;$(Version)&quot;)]"/>
	</Target>
</textarea>
<p>So here we are using RegEx to perform a find and replace on the AssemblyVersion and AssemblyFileVersion attributes within the AssemblyInfo.cs files.  Nice!</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=213</wfw:commentRss>
		</item>
		<item>
		<title>NCover MSBuild Task</title>
		<link>http://jammer.biz/blog2/?p=212</link>
		<comments>http://jammer.biz/blog2/?p=212#comments</comments>
		<pubDate>Fri, 16 Oct 2009 11:45:52 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Continuous Integration]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=212</guid>
		<description><![CDATA[After having configured my MSBuild scripts for use in TeamCity I found this rather nifty page in the NCoverExplorer UI.  You basically configure the NCover report via the UI.  Open up the NCoverExplorer application and click File -&#62; Run NCover.  You are then presented with the Runner dialog box where you set various parameters in [...]]]></description>
			<content:encoded><![CDATA[<p>After having configured my MSBuild scripts for use in TeamCity I found this rather nifty page in the NCoverExplorer UI.  You basically configure the NCover report via the UI.  Open up the NCoverExplorer application and click File -&gt; Run NCover.  You are then presented with the Runner dialog box where you set various parameters in the UI.  You can then press various buttons and it will write your Nant/MSBuild or command line for you!  Very neat &#8230;</p>
<p><img src="http://www.jammer.biz/blog2/wp-photos/NCoverMSBuildTask.jpg" alt="" width="1067" height="594" /></p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=212</wfw:commentRss>
		</item>
		<item>
		<title>MSBuild – Editing Xml Scripts</title>
		<link>http://jammer.biz/blog2/?p=211</link>
		<comments>http://jammer.biz/blog2/?p=211#comments</comments>
		<pubDate>Mon, 12 Oct 2009 09:26:51 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Continuous Integration]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=211</guid>
		<description><![CDATA[Editing MSBuild Xml files can be a bit of a chore. For general everyday file editing I tend to use NotePad++ which is an awesome file editor and viewer. However, you can use Visual Studio to edit your MSBuild files and at the same time get Intellisense!

Open up Visual Studio and go to the Tools [...]]]></description>
			<content:encoded><![CDATA[<p class="MsoNormal">Editing MSBuild Xml files can be a bit of a chore.<span> </span>For general everyday file editing I tend to use <a href="http://notepad-plus.sourceforge.net/uk/site.htm">NotePad++ </a>which is an awesome file editor and viewer.<span> </span>However, you can use Visual Studio to edit your MSBuild files and at the same time get Intellisense!</p>
<p class="MsoNormal">
<p class="MsoNormal">Open up Visual Studio and go to the Tools -&gt; Options and go to the Text Editor options then you can associate file extensions to text editors.<span> </span>For MSBuild files we need to associate things like “proj” to “XML Editor with Encoding”.<span> </span>Now we also have intellisense to help write the script.</p>
<p class="MsoNormal">
<p class="MsoNormal">Now Visual Studio will be able to load the .proj MSBuild script into the correct editor and you can obviously associate *.proj files with Visual Studio to launch into them from Windows Explorer.</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=211</wfw:commentRss>
		</item>
		<item>
		<title>CI - TeamCity</title>
		<link>http://jammer.biz/blog2/?p=210</link>
		<comments>http://jammer.biz/blog2/?p=210#comments</comments>
		<pubDate>Fri, 09 Oct 2009 13:00:49 +0000</pubDate>
		<dc:creator>Jammer</dc:creator>
		
		<category><![CDATA[.NET / C#]]></category>

		<category><![CDATA[Computing]]></category>

		<category><![CDATA[Continuous Integration]]></category>

		<category><![CDATA[NDepend]]></category>

		<guid isPermaLink="false">http://jammer.biz/blog2/?p=210</guid>
		<description><![CDATA[I have finally completed the set-up and configuration of my new continuous integration system for SampleSort.  I have to say that I&#8217;m seriously impressed with TeamCity.  The installation and configuration was straight-forward and has been rock solid.
One thing I would say is that after installation I&#8217;d recommending switching to SQL as the database back end [...]]]></description>
			<content:encoded><![CDATA[<p>I have finally completed the set-up and configuration of my new continuous integration system for SampleSort.  I have to say that I&#8217;m seriously impressed with <a href="http://www.jetbrains.com/teamcity/download/index.html">TeamCity</a>.  The installation and configuration was straight-forward and has been rock solid.</p>
<p>One thing I would say is that after installation I&#8217;d recommending switching to SQL as the database back end immediately.  I started off using the internal database and found the migration tool very awkward so I&#8217;m now missing some data from the initial build runs but I can live with that.</p>
<p>I have configured two build configurations for my SampleSort project.  The first build configuration works in Debug mode  and runs the following reports:</p>
<ul>
<li><a href="http://www.codeplex.com/xunit">xUnit</a> (via <a href="http://www.gallio.org/">Gallio</a>) Test Report</li>
<li><a href="http://www.ncover.com/">NCover</a> Report</li>
<li><a href="http://www.kiwidude.com/blog/">NCoverExplorer</a> Report</li>
<li><a href="http://www.ndepend.com/">NDepend</a></li>
</ul>
<p>This debug build configuration is triggered after a Subversion source code commit and is set-up to fail the entire build if there are any tests that do not pass.</p>
<p>The second build configuration works in Release mode and performs a simple Release build of the same source code on the event of a successful Debug build.  The last step in this Release build configuration is to then run an Inno Setup compiler script to package the release mode application into the final application installer.</p>
<p>At the moment this last task is simply an MSBuild Exec command so it all happens outside of the TeamCity scope if you will, this just means that any reporting isn&#8217;t included in the TeamCity results.</p>
<p>So far getting this all set-up and configured has actually been a very time consuming task.  There have been many points of confusion along the way so I&#8217;m  going to add another blog item soon that goes into a bit more detail of how I went about getting each of these build tasks set-up.  I still have a few niggles that need to be ironed out of my script that relate to MSBuild batching, basically during the test phase there are actually multiple passes of the tests in order to produce the test reports.  This does have a knock on effect of making each build pass a little more time consuming than it need be but also in the great scheme of things this isn&#8217;t a huge problem.</p>
<p>I have to say that to have all of this (TeamCity, xUnit, NCover, NCoverExplorer) for free really is inspiring in many ways.  A lot of blood, sweat and tears went into making all of these tools and I&#8217;m now benefitting (and my users) with zero financial outlay, I tip my hat to the developers!  I also have to thank Patrick for the free NDepend licence!!</p>
]]></content:encoded>
			<wfw:commentRss>http://jammer.biz/blog2/?feed=rss2&amp;p=210</wfw:commentRss>
		</item>
	</channel>
</rss>

