Give me the media and the Ultimate Boot CD

My dad bought a laptop that came with the typical factory image full of junk. It crashed constantly, didn't detect the anti-virus that was installed and wouldn't allow me to activate Windows Defender. It also only had the system partition for data. All good reasons for a rebuild. HP kindly don't offer media for recovery though. Not being familiar with this, I wiped the system drive for a rebuild without first burning the recovery partition to a DVD. After lots of attempts at recovery and install... [More]

Xml comments and the include element

I have been doing a lot of work over the last week writing xml comment documentation. I have been compiling the xml output into chm files using SandCastle, [SHFB] and my own [SHFB] wrapper application. I have been increasingly been finding that I am writing remarks that I want to reuse across different methods and properties of several classes in an assembly. Today, I had a particular property scattered among several data contracts for a WCF service that are used for the same purpose and have th... [More]

ReSharper comment token identification

ReSharper has a handy feature where it will identify tokens in your comments such as todo, note, bug etc. The [VS] IDE has a similar feature for TODO where it will identify those comments in the Task List window. My issue with the ReSharper implementation is that it will identify these tokens even if they are in the middle of the comment rather than just at the start of the comment line. I originally posted an issue into the JetBrains Jira system thinking that this behaviour was not configurable... [More]

SandCastle Builder Support for Namespace Documentation

At work we have recently integrated building SandCastle documentation into our TeamBuild process using the SandCastle Help File Builder (SHFB) application. I created a wrapper application to achieve the same thing as a local dev process to help authoring the help contents. One of the issues we had was how to add namespace documentation. The process we were using was to pass all the required information to SHFB instead of using a project file. The SandCastle project file is where the namespace do... [More]

Static Analysis Rules - Sooner rather than later

I posted the other day that I wanted to create some static analysis rules for [VS]. I have some great ideas for several rules that I want to write in order to do two things. Firstly, I want rules to pick up common mistakes made in coding. Secondly, the rules can be used to enforce coding standards via the Code Analysis TFS checkin policy. To enforce coding standards, I have previously written xpath and regex TFS checkin policy implementations that work off a set of defined rules. I found t... [More]

LogLevel NAnt Task

An ongoing issue that I am having with NAnt scripts is bloat in the log records being written to the screen and to disk. Tasks like xmlpeek and regex log messages that I am not interested in for the given logging threshold. It would be nice to not have these unwanted messages logged but for everything else to be logged as expected given the defined log threshold. After doing some searching, I came across this post from Jay Flowers. Will Buttitta posted another version of the same idea in a comm... [More]

GetPublicKey - InternalsVisibleTo

I posted previously about using the InternalsVisibleTo attribute for unit testing and how I had come across David Kean's very helpful PublicKey application. I have been using this application for the last month or so and it has been great, until yesterday. I changed the snk file used by my solution. This caused an interesting Catch-22 situation. AssemblyA couldn't compile because it had an InternalsVisibleTo attribute pointing to AssemblyATest, which now has the wrong PublicKey val... [More]

CodeSmith CodeTemplate attributes

I have been playing with [CodeSmith] recently. I have created a [NAnt] script that compiles and executes a set of [CodeSmith] templates based on a project definition and also integrates with [TFS] for any changes. I did come across a problem recently with [CodeSmith] being able to compile my templates though. The naming of my .cst files included format masks that my [NAnt] script can use to determine the template output filename rather than being defined by the template itself. The issue here i... [More]

Windows Live Writer Released

I guess this is good news, but I am not so eager as I once was about this product. While I think the product itself is absolutely fantastic, the installer experience of Beta 3 left a very sour taste. I still have the same issues with the unified installed which won't work behind a corporate environment, but at least my default IE search provider is no longer overwritten when I specifically ask it not to. It is still rude that the "option" is selected by default, like I must have become bored of ... [More]

Getting the PublicKey for InternalsVisibleTo

Using the InternalsVisibleTo attribute is great for allowing unit tests in an external assembly to directly call types and methods marked as internal. The problem for strong named assemblies is that you need to specify the public key of the unit test assembly in the attribute declaration. I found that David Kean produced a little utility app to make life easy. Thank you very much!