System Upgrade
Microsoft Vista
Dec 30, 2008

To say that "Vista sucks" is an understatement.

Simply put, older programs will not work with Vista. This is intentional - Microsoft has purposely crippled Vista so that you will have to buy new software.

Background | Improvements | Internet Explorer | Help Files | Visual Basic 5 | Security
Windows Explorer | Minesweeper | Video Capture | Old Software | Bottom Line


Background

A friend bought a new Gateway computer with the 64-bit Vista operating system. The only thing that sort of worked on it was Internet Explorer ... except that there was no way to change the default home page. Other than that, the machine was not used - the software my friend loaded simply refused to work.

Over the holidays, I was ask to help and make it work. These pages document some of what I learned. Basically,

When it was discovered that the system was basically unusable, my friend contacted Gateway. They agreed to install Windows XP ... but would charge $60 to do it.

Wait, these guys sold my friend what is now known to be a worthless computer and they want another $60 to fix it. (They said it was to cover the time required to load the new operating system.)


Improvements

To say that everything about Vista is bad is unfair. In fact, it contains several very nice improvements. Since this document is mostly about Vista problems, I will present the improvements first. I have been a regular user of SysInternals' Process Explorer for several years. As a result, the task manager improvements are not that significant. (SysInternals was recently bought by Microsoft and some of the features added to the new Task Manager.)

The one additional improvement is really not worth all the other hassles.


Internet Explorer

The first support call I received for Vista concerned Internet Explorer Pretty simple - from the menu, select and the control is on the first tab.

The problem was that there was no menu. I do not know if this is a Vista issue or a Gateway "improvement", but the menu was not displayed. The solution turned out to be trivial, but long distance, over the phone, it was too obscure for my friend.

There were 2 separate ways to display the menu

When I was using IE, it was very frustrating because everything is in a different location. For instance, it took me 5 minutes to find the Refresh button.

These are not major drawbacks, but they are a major cause of user frustration.


Help Files

Microsoft has developed 2 different help file standards. There was once a court battle trying to stop Microsoft from including an internet browser as part of the operating system. In order to "prove" that the browser is a "required" part of the OS, the new compiled html help was developed. (Well, that is the theory.)

To quote Microsoft

Bottom line - help for older programs will not work!

In my opinion, this is an attempt to kill all existing windows applications.

Well, there is a work around - if you are willing to first install Windows Genuine Advantage (Microsoft spyware), then you will be permitted to download WinHlp32.exe and your older software will work.

My question is - If Windows Genuine Advantage is so great, then why wasn't it included in Vista?


Visual Basic 5

The primary planned usage for the new computer was to develop programs using Visual Basic 5 (VB5).

Simply put, Visual Basic 5 does not work with Vista. (I created a separate page for the details.)

Technically

Additional info is presented here.


Security

Security is always a trade-off. Vista has added a few interesting changes.

With Vista, there are frequent dialog boxes asking if you really want to run the program you just requested. I double click an executable file, and then there a usually a prompt asking if I actually want to run the program! Nice security enhancement, but very irritating.

In addition, the programs are run with "user" permissions (by default). If they then try to do a protected function, you will be presented with a dialog box that allows you to permit administrator permissions.

This could be characterized as either a plus or a minus. I have not used Vista enough to decide if the extra hassle is worth the possible security improvement.

Basically, these features should block most pre-Vista parasites. However, there should be several ways to write new parasites that circumvent these controls.

You can configure individual programs to run with administer permissions by modifying the associated properties. Nothing in VB5 worked until this was done.


Windows Explorer

Windows Explorer is the program that displays the desktop and provides directory and file access (File manager).


Address Bar

With Windows XP, one of the options allowed the path to be displayed in the Address bar. This feature was changed for Vista in such a way that it is no longer possible copy path names from the address bar to the clipboard.

For most users, this is not an issue ... but I use that feature a lot when creating documentation (like this web page).

(There may still be a way to do this, but I no longer have access to a system where I can experiment. This feature was not available by default.)


Hidden Files

There have always been a few hidden files (like desktop.ini) that Windows Explorer refuses to display. Apparently, with Vista, there are a few new super hidden files that are used regularly (every few seconds). These are only visible via the Resource Monitor.


Selecting multiple files

There is a new option When enabled, this allows you to select multiple items with just a mouse (instead of using the 2-handed Ctrl-click). Fortunately, both Ctrl-click and Shift-click still work when the checkbox option is enabled.

Cool idea, but not more useful than old method (for me). This could be useful for people that have a handicap (like only one useable hand).


New directory structure

64-bit Vista uses a slightly modified directory structure. I was not able to determine (nor do I care) if this is because it is Vista or because it is a 64-bit operating system. When VB5 was installed, it was placed in C:\Program Files (x86). With previous operating systems, VB5 was placed in C:\Program Files.

When VB5 was installed, the associated (and non-functional) ActiveX components were placed in SysWOW64. With previous operating systems, they were placed in System32.

This new directory structure caused several problems with programs ported from Windows XP.


Virtual directories cause recursion

I have used AgentRansack for many years - one of the best free programs there is. Of course, it fails on Vista.

In a rush to rename/relocate some directories used by legacy programs, a patch was used to maintain backward compatibility .. for some programs. Basically, there are several virtual directories named Application Data that point to their own parent directory. As a result, when a program tries to access all the files in the directory, it keeps coming back to the recursive link .. for infinity.

To be specific, AgentRansack reads the following directory "aliases" recursively finding thousands of files were only a few actually exist

There are probably more, but I haven't bothered to look. (I hate Vista)

Actually, there are a large number of other virtual directories that do not have this problem. In the directory security settings, the "List Folder / Read Data" property is set to deny for Everybody. However, I have not tested (nor do I suggest) that change for Application Data because it might break something else.


Registry size

On both Windows XP and Vista, the main parts of the registry are located in However, the registry size ... well Apparently, for Vista, there are separate registry keys for 32-bit and 64-bit programs ... but 4 times larger? Come on guys, this is a nightmare.


Misc

This is just some additional information.

The system I was working on had 8 gigabytes of RAM. (Yes, that is excessive. The salesperson really took my friend.) As a result,


Minesweeper

Minesweeper is one of the games that comes with Windows. I was surprised to see that its performance was reduced in Vista.

As usual, Microsoft has proven again that "changed" does NOT mean improved.


Video Capture

Bottom line - 64-bit drivers do not exist for my video camera.

Of course, this took 2 days to discover.

Additionally, many gps units will not work. Specifically, Garmon does not support 64-bit Vista.


Old Software

I have written a number of programs using Delphi 5 (so far, the best compiler I've seen). However, programs that I wrote, and which work perfectly on Windows XP, are totally unusable on Vista 64. Specifically, the window border was rendered smaller than the form .. which caused many of the components to not be displayed. With "normal" programs (those made with the inferior Microsoft compilers), components stay in place when you resize the window. Therefore, it should be possible to simply increase the size of the window to see the missing components. However, I write my programs so that many of the components are "pinned" to the right and bottom edges of the form. This allows me to write programs that permit the user to determine the size of the application and, specifically, the sizes of the displayed graphs. (I strongly believe in user friendly applications.) When the user resizes the forms, the size of the graph increases and the components to the left of and below the graph area automatically moved as appropriate. Using Delphi, this capability is built-in and requires no additional code on the part of the developer (me). (I believe that the dotNet family of compilers also has this capability.)

These are the specific programs I tried

Of course, I tried setting the Vista "compatibility" mode to "XP service pack 2" - no change, same display problems.

Sorry - this is not just sloppy programming on the part of Microsoft. There is (was) only one major competitor that provided compilers. (Borland has since gotten out of the compiler business ... I wonder what the real reason was.) It is not imaginable that no one at Microsoft ever tested their "new and improved" operating system with a program created using a competitor's product. <Rest of rant suppressed because it is so obvious.>

Apparently, this problem is caused by a new default font and font size. Well, if that was true, then the compatibility mode should have fixed things.

As a result, I have had to add links to my pages warning users that my code will not work with Vista. To be VERY specific, Microsoft has reduced the value of MY creative work by pushing an operating system that keeps my programs from working.

(This is one of the reasons that I suggest that Vista was designed to intentionally break old software.)

To make things worse, the Firebird database will not run with Vista.

Just a random reference - How to Vista enable your applications. (Requires a free logon to view .. so I haven't read it.)

I have provided the details on how to "fix" this in Delphi 5 code you have written yourself. However, this requires changing and recompiling ALL existing programs.


Bottom Line

The bottom line is that - Vista sucks!


Author: Robert Clemenzi - clemenzi@cpcug.org
URL: http:// cpcug.org / user / clemenzi / technical / Upgrades / Vista.html