Help Compiler

Recently our team has migrated from Visual Studio 6 to Visual Studio 2005. This was a long overdue upgrade. We skipped over some intermediate versions of the tool. And I think it made our migration more difficult. Most of our applications are old and have no built in help systems. However one recent application has a pretty good contextual help system. The developer tasked with migrating that application complained that the compilation for the help bombed immediately.

After a bit of research, the developer found that Visual Studio 2005 does not by default install the Microsoft Help Compiler. This seemed very strange. What was Microsoft thinking? They do provide a freely downloadable help compiler. Maybe developers no longer ship help with their applications. Or maybe they use other tools like RoboHelp from Adobe. I don’t know.

I believe Microsoft ships its Visual Studio 2005 on DVD. There should be plenty of room on that DVD for the Help Compiler. Not including it has made our life a bit more complicated. It is no big deal for developers to download and install the help compiler. But things get tricky for other individuals. Our configuration management team normally does our builds. They did not know how or where to install the Help Compiler.

To tell the truth, I have not even installed the Help Compiler on my machine. I guess I will not be building that application locally any time soon. Before completing this post I decided to browse the web to find out why Microsoft chose not to include the Help Compiler with Visual Studio. I think I quickly found out the answer. Microsoft’s new solution for help is HTML Help. Perhaps the old Help Compiler (which Microsoft calls the WinHelp Compiler) is going out of style.

My hope is that Microsoft does not leave us stranded having developed an extensive WinHelp component to one of our applications. Why convert to a new HTML Help system when it will not improve our end user experience any? Knowing Microsoft, I had better brush up on the new HTML Help system to be safe.

Microsoft Marketing

I recently read a blog post making fun of a Visual Studio advertisement by Microsoft. This interested me because I had seen the ad in a magazine before and thought it was funny. The ad features before and after pictures of a developer who has started using Visual Studio. Apparently Visual Studio has enabled the developer to get a better laptop, a BMW to drive, and the attention of some attractive females in his cubicle.

The blog post is from . This is a blog about open source software. So you know it was going to razz Microsoft. Essentially the author modified the ad, and pointed out the humor that ensues. It was nice to see that there were 30 responses to the blog entry. And I wanted to add my 2 cents. Unfortunately I got the following automated reply when I tried to add a response”:

“Sorry, but your comment has been flagged by the spam filter running on this blog: this might be an error, in which case all apologies. Your comment will be presented to the blog admin who will be able to restore it immediately.
You may want to contact the blog admin via e-mail to notify him.”

Now I am hoping that a human will review my response. It was actually a meaningful reply that was not spammy in the least. A human should be able to detect this. My first thought about being rejected by spam filter was maybe due to the fact that I have black hat in my e-mail address. Then I started thing some more. I am a Microsoft developer. In other words I am pro-Microsoft. Maybe the blog author has written a really smart spam filter that blocks out posts that are not pro-open source.

To quickly determine whether my e-mail address was the problem, I submitted the same response to the blog post using another email address. This time I made sure there was no reference to “black hat” in my e-mail or home page URL. I still got the same automated response from the blog. Who knows? Maybe all responses must get approved by the blog author. Well just for that I am not linking to his blog from this post.

New Windows

Bill Gates recently came out and said the next version of Windows will be released in about a year. That version will be called Windows 7. I hope it will get a warmer welcome than Vista. Somehow to me it seems that Microsoft is a bit off in its numbering. Here is how I figure we should be up to Windows 8 by then:

3.1 Windows for Workgroups
4.0 Windows 95
5.0 Windows NT
6.0 Windows XP
7.0 Windows Vista
8.0 (the next Windows?)

Perhaps Microsoft has a different numbering strategy. Maybe Windows 95 and NT both count for one generation of Windows. Or maybe Windows NT does not count in the grand order of home windows operating systems.

I bet that, by the time the next version comes out, it will have a sexier name than Windows 7. Who knows? I could come up with a snazzy name myself and submit it to Microsoft for consideration. All I would want are bragging rights, and maybe a link from the Microsoft web site to my little blog. Not too much to ask for if I do say so myself.

Visual C++ 6.0

At work we maintenance a set of legacy applications developed with Visual C++ version 6.0. This version of the IDE came out back in 1998. So it is relatively ancient technology. However it works. And there are no surprises when maintaining the software we support. The problem is that developers like to work with the latest and greatest tools. In fact I have a trial copy of Visual C++ 2005 at work for side projects.

At home I also run Visual C++ version 6.0. This allows me to view work that I take home, as well as work on my side software development business. I bought my copy of Visual C++ a long time ago. It has and continues to serve me well. Recently I have been writing software to release on my new blog Black of Hat. My latest program is Crawl. It was written in Visual C++ version 6.0. Details on the program can be found on my post entitled Crawl Program Released.

I am still debating whether to purchase an upgrade to Visual C++ version 6.0. An upgrade would be beneficial to learn how to develop in the Dot NET environment. But for now my goal is to knock out programs quickly.

Windows Explorer

With this post, I want to get back to some basics. Specifically I want to talk about Windows Explorer. Not Internet Explorer (the browser). I want to talk about Windows Explorer. This is the program that let's you navigate your disks and cd-roms and such. It is light years ahead of the old directory command from the DOS days.

You can start up Windows Explorer by right clicking on the Windows Start menu, and then clicking Explore. You can also run the executable "Explorer.exe". Right clicking on an object within Explorer usually let's you choose from a number of options in a context menu.

Choosing About from the Help menu in Explorer tells you interesting things such as the version of Windows you are running, and also how much RAM you have on your computer. I bet there are a lot of other cool features of Explorer that I don't even know about. I hope that Explorer is one piece of Windows that we agree Microsoft did a good job with. Wouldn't you say so?

The Visual Studio Family

I recently installed a trial copy of Visual Studio 2005 Team Suite. To tell the truth, I do not know much about this software. Just hoping that I can dig a little into dot Net development. My background is legacy Visual C++ development.

The thing that amazed me is that the installation program for Visual Studio 2005 mentioned that many components were being installed. Here is a list of some of the ones that caught my eye:
  • MSXML 6.0 Parser
  • .NET Component Framework 1.0 SP3
  • .NET Component Framework 2.0
  • Visual J# 2.0
  • SQL Server 2005 Mobile Edition
  • SQL Server 2005 Express Edition
My hope is that I will be exposed to these components/tools in the months to come. I had got to get a move on this learning. The trial version of the software expires in 180 days. And the full version costs a whopping $800 to purchase.

Don't Forget Explorer

I saw a question on a software development board about how to restart Windows Explorer. This is one that I actually know the answer to. First you need to bring up the Windows Task Manager. Then you must kill the "explorer.exe" process. When it is killed, you choose File New Task from the Windows Task Mangager menu. And you type in "explorer.exe" in the open dialog. It will take a little while for Explorer to restart and show the desktop, task bar, and start menu. But this comes in handy when things go awry with Windows Explorer.

The new thing I recently learned about Explorer is that there are a number of optional command line options for the program. For example, "/n" will

[Open] a new single-pane window for the default selection. This is usually the root of the drive Windows is installed on. If the window is already open, a duplicate opens.