The reason for the difference is that the only change between .44 and .45 was the inclusion of an updated drop of SQL Express binaries. As such, we did not re-build the Visual Studio or .NET Framework binaries (since test had already signed off on those) - and instead just updated setup to pick up the new SQL binaries. Consequently, when you hit the about box in VS you’ll see the .44 version string displayed -- even though technically it is from the .45 setup package.
As an aside, the version numbering system we use within the developer division is somewhat clever yet simple. Some teams just increment the build number by one on each build (1, 2, 3, 4, n). A few years ago we went to a model where we use the build date to drive the build number instead. Specifically, the first digit of the build indicates the year, the next two digits the month, and the final two digits the day. The benefit of an approach like this is that it makes it pretty easy to figure out which build was produced when -- and to be able to quickly figure out how old a bug is when we get a bug report. So build 50215 would indicate the build from Feb 15th, 2005. Build 50115 is the build from Jan 15th, 2005. Build 40215 is the build from Feb 15th, 2004.
As we get closer to releasing a product we will lock down the version number and instead go to point builds. These increment one for each new release/build we make. So the .45 build is the 45th build since we entered lock-down on Feb 15th.