Tuesday, December 08, 2009

Windows 7 - Program names that include "setup"

I took some time over the weekend to test the Weather Message installer on a Windows 7 computer that had UAC enabled.  I had already tested everything on a Windows 7 computer, but it did not have UAC enabled.

I discovered something interesting.  If a program name contains the word "setup", the Windows 7 program compatibility assistant thinks the program is an installer.  Weather Message contains the program WxMesgSetup.exe.  It thought it was an installer! 

As per Microsoft, I had already included an application manifest.  This manifest made Vista happy.  With that manifest, Vista did not think WxMesgSetup was an installer.  The program compatibility assistant was changed in Windows 7.  It still thought it was an installer, because it did not write an uninstall registry key.

To my dismay, when I clicked Save in Weather Message Setup, I was greeted with a window that said "This program might not have been installed correctly."  I had a prompt to reinstall the program or indicate that it was installed correctly.  Well the program was installed correctly.

After some research time, I discovered that Windows 7 wants a special GUID placed in the manifest of each program to indicate that the program is fully compatible with Windows 7.

I updated all of the programs with this special GUID.  Now Windows 7 no longer thinks WxMesgSetup.exe is an installer.

No comments: