Microsoft Data Access Components(MDAC) and .Net Framework 3.5 SP1

Recently I upgraded to .Net Framework 3.5 SP1. The service pack introduced a host of bug fixes, along with some pretty cool enhancements too.

After installing the service pack, one of my web applications immediately started throwing the following exception:

The .Net Framework Data Providers require Microsoft Data Access Components(MDAC). Please install Microsoft Data Access Components(MDAC) version 2.6 or later.

The code that was throwing the exception tries to open an OleDb connection to read data from an excel spreadsheet:

string conStr = String.Format("Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};Extended Properties=Excel 8.0;", filePath);
OleDbConnection objConn = new OleDbConnection(conStr);
objConn.Open();
...

It seems to me that this component may have been included in previous versions of the framework, and has since been removed. Anyway, I downloaded and installed the latest MDAC, and sure enough, it fixed the problem!

Vista Start Menu Search Fails To Load Certain Applications

Since I’ve switched over to Vista, the start menu search has become one of my favorite features. It lets you quickly and easily open up programs without your fingers ever leaving the keyboard. For example, just hit the Windows key, type in “Notepad”, and hit enter. In fact, just typing in “No” + enter is all it takes (at least on my computer), and off you go:

notepad-vista-search

Recently I noticed that some programs, despite showing up in the search results, would fail to load. To make matters worse, there seemed to be no ryhme or reason as to why a particular program would load successfully, whereas another program would not. The only way to get a “broken” search result to load was to navigate to the original location in Start -> All Programs. Opening up a program in this archaic fashion gave me flashbacks to the Windows ME days, so I knew I had to fix this… and I had to fix this fast.

Googling every possible phrase of “Start Menu Search”, “Start Button Search”, “Vista Instant Search” was largely fruitless, except for one forum thread that I eventually found. The problem traces back to third party programs that are incorrectly extending the context menu in the Vista shell. How this affects opening up seemingly unrelated programs, I have no idea. You would think that these two areas would be largely unrelated. Thankfully, there is a way to fix the problem. In order to figure out which program is the culprit, download ShellExView. This nifty program shows you a list of shell extension components that are installed on your machine. The useful part is that you can enable/disable each component, so you can figure out which one is breaking your Vista menu search. This can be a a tedious process, especially if you have a large list of third party programs integrated into you context menu. I recomend you sort by type (so that all Context Menu items are listed at the top) and disable chunks of 4-5 at a time, testing the search feature with a known “broken” link so that you can narrow it down. The sole offender for me was CompareIt!:

shellexview

Immediately after disabling this extension, my search started working again. Hopefully this helps someone diagnose and fix this spotty problem, before they have to even think about how hard our forefathers had to stuggle in order to open up their applications ;)

My First Blog

Well, here it is: my first blog. It took me quite some time to decide which blogging platform to use. The contenders were WordPress and BlogEngine.NET. Despite WordPress having more extensions, more themes, and a bigger community, I decided that BlogEngine.NET was going to be my choice. The biggest motivator is that it is written in ASP.NET and C#, which makes it that much easier for me to extend and customize. In fact, the very first thing I did was code the ability to have multiple widget zones, so that I could support a theme with more than two columns. Speaking of my theme, dilectio was originally built for WordPress, so I had to [manually] convert it to BlogEngine.net.

There are still some bugs here and there with the changes and customizations that I’ve made, but overall I’m happy with my choice!