Parsing Log Files in Excel

IIS Log Header

Overview Sometimes I run into situations where I have an Excel file with a lot of blank rows or rows that contain changing information, that I want to remove. A common scenario for me is an Internet Information Services (IIS) log file. These don't contain blank lines, but they have a header that repeats throughout … Continue reading Parsing Log Files in Excel


Auto-Build Windows Forms Menu From Name Space

Overview Spanning the decade plus I've been a developer and before that as a systems administrator, I've written a seemingly endless supply of small programs to help me do different little jobs. This has ranged from little utilities I designed to iterate folders and rename, sort, etc. files (too inefficient to do by hand) to some pretty decent code generators. The problem is … Continue reading Auto-Build Windows Forms Menu From Name Space

Accessing Session State in an HttpModule in MVC

Overview HttpModules can be very useful for a lot of tasks. They are especially handy when trying to accomplish logging within a .NET web application. However, they also come with quite a few hurtles to overcome. In this article we'll discuss some of those challenges as well as ways to get around them. In the … Continue reading Accessing Session State in an HttpModule in MVC

XML Comment on ‘X’ Has CRef Attribute That Could Not Be Resolved

The generic collections in the System.Collections.Generic namespace get the "generic" moniker from their ability to mold themselves to fit the type you're working with. Within the definition of the generic collections this generic type is generally specified with a "". Well, the XML comment system also needs a type specifier to match up with the generic object's definition. In XML comments we can't use the less-than () characters so we instead use curly braces ({ and }). If you update all of the XML references that are throwing the error described above to have "{T}" at the end, the XML comment system will recognize it and resolve the error. If you have a Dictionary or other generic type, simply include the generic type characters appropriate to that definition. For instance the Dictionary object has a key and value so I simply put "{K,V}" after its definition.

High DPI Compatibility Fix

Overview With today's computers having high DPI/PPI (Dots-per-Inch/Pixels-per-Inch) screens, you can start experiencing some problems with the way certain pieces of software render things like buttons, dialog boxes, etc. Here is an example of this in CadSoft Eagle. Although the menu appears normal (i.e. File, Edit, etc.), the toolbar icons are practically microscopic. There can … Continue reading High DPI Compatibility Fix

Use Assembly Title, Description, Company, Copyright, Version in C#

When you edit the properties of a project in Visual Studio, you can enter a Title, Description, Company, Copyright and Version in the Assembly Information section. The question becomes, how do you use these in a project so that you have a single source of information? In this article I'll walk you through the steps used to access the assembly information so you can easily use it throughout your application.

Move Windows User Folders to Another Drive

To help alleviate this situation, we are going to move the user folders (Documents, Downloads, Music and Videos) to the secondary hard drive. If this is not done correctly though, applications that look for these files will just think they're missing and future files will continue to be stored on the small primary drive. This article will walk you through the steps to perform this move properly so that this don't occur.