Windows 7 64-bit Uninstall Registry Entries

Got a problem you cannot solve? Try here.
mwhouser
Posts: 36
Joined: Wed Oct 08, 2008 12:26 pm

Windows 7 64-bit Uninstall Registry Entries

Postby mwhouser » Wed Jun 10, 2009 11:41 am

I am encountering an issue with IA8 and 9 (9.03) where a new install project using all default values does not write entries to
HKEY_LOCALMACHINE\\Software\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\...

The product does appear in the Add/Remove programs dialog though.

These registry entries are required by the "Compatible with Windows 7" logo.

Windows 7 32-bit is ok and Vista 64 is ok. Only Windows 7 64 has the issue.

We are testing on the release candidate for Windows 7 64-bit Ultimate released a few weeks ago by Microsoft (Build 7100).

Before I purchase a support incident package, can someone else confirm whether they get the same behaviour or not? I think it's a bug, but I want to confirm that I'm not brain dead before I go the next step.

Here is a link to our test project (created using 9.03).
http://www.houser.ca/Pulse/NoUninstallReg.zip

Thanks,
...Matt

StyX
Posts: 51
Joined: Fri Apr 11, 2008 7:14 am
Location: Stavanger, Norway
Contact:

Postby StyX » Thu Jun 11, 2009 8:23 am

I can confirm this. When installing a 32bit application the Minor and Major Version is not written to the registry key that is needed for the Windows 7 certification.

It is however written to the registry under the GUID for the install. See attached screenshot.

ERROR: Applications are expected to create these registry entries DisplayName, IsntallLocation, Publisher, UninstallString, VersionMajor*, and VersionMinor*.

This application did not create the following registry entries:
Value VersionMajor missing from key HKEY_LOCAL_MACHINE\\Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\ProfitBase Sim 7.3 SP 5.
Value VersionMinor missing from key HKEY_LOCAL_MACHINE\\Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\ProfitBase Sim 7.3 SP 5.
Value VersionMajor missing for program ProfitBase Sim 7.3 SP 5.
Value VersionMinor missing for program ProfitBase Sim 7.3 SP 5.
IMPACT IF NOT FIXED: A user might remove an application not only to free up disk space, but also to return the computer to its state prior to the application being installed. Failure to restore the machine to its original state is a poor user experience. Also applications that do not create the above registry entries will not be found by enterprise inventory tools, and may experience issues in OS migrations and or upgrades scenarios. Windows telemetry tools may not accurately report information about your application.


File Attached:

<a>correct.png

File Attached:

<a>false.png

File Attached:

correct1.png
Last edited by StyX on Thu Jun 11, 2009 8:27 am, edited 4 times in total.

StyX
Posts: 51
Joined: Fri Apr 11, 2008 7:14 am
Location: Stavanger, Norway
Contact:

Postby StyX » Thu Jun 11, 2009 8:25 am

And here's the key that is beeing checked by the validation toolkit.

File Attached:

false.png

mwhouser
Posts: 36
Joined: Wed Oct 08, 2008 12:26 pm

Postby mwhouser » Thu Jun 11, 2009 9:00 am

In my case, the Guid key is not even being created. But I am not looking under Wow6432Node/..., only HKLM/Software/Microsoft/...

...Matt

StyX
Posts: 51
Joined: Fri Apr 11, 2008 7:14 am
Location: Stavanger, Norway
Contact:

Postby StyX » Thu Jun 11, 2009 9:04 am

Well the example I posted here is a 32-bit application running on Windows 7 64bit. Which is why the Wow6432Node is being used.

I've got another application that is a true 64-bit application and the same is the case there, only the path is slightly different.

mwhouser
Posts: 36
Joined: Wed Oct 08, 2008 12:26 pm

Postby mwhouser » Thu Jun 11, 2009 9:26 am

My application is a 32-bit application. And I did find it under Wow6432Node/...

The Microsoft swlogo people did not mention this location, only the other location. I am clarifying with them where it should be.

Thanks,
...Matt

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Thu Jun 11, 2009 12:17 pm

It should not matter whether the key is in the 32 bit hive or the 64 bit hive - the operation of the installer is not affected in any way; check with Microsoft as I doubt they will have a problem with this in validation.
Michael Nesmith
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/

mwhouser
Posts: 36
Joined: Wed Oct 08, 2008 12:26 pm

Postby mwhouser » Thu Jun 11, 2009 12:30 pm

Michael,

Here's what I am experiencing.

I am using the latest Windows 7 Validation tool (currently in beta) off winqual to perform the Windows 7 "Compatible With Windows 7" self-check. The report contains all the programs installed on the PC at the time of generation. When I upload the report to winqual, our product is not in the list (and it needs to be). Microsoft says that it's because of the missing registry entries.

So this is what I am investigating.

I just got a response from them saying that for 32-bit applications, the tool should be looking in the Wow6432 hive. I've now asked them *specifically* what are they looking for that we could be missing because it looks like you're atleast putting something there in IA9.

There is always the possibility that the validation tool has a bug :)

Thanks,
...Matt

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Thu Jun 11, 2009 2:16 pm

Please let us know so we can take action if necessary, but I am thinking this one might be their bug ;)
Michael Nesmith

InstallAware

Home of The Next Generation MSI Installer

Get your free copy today - http://www.installaware.com/

mwhouser
Posts: 36
Joined: Wed Oct 08, 2008 12:26 pm

Postby mwhouser » Thu Jun 11, 2009 5:33 pm

I started the problem over from scratch.

Installing on Windows 7 64-bit with an IA9 installation.

The Windows 7 Logo tool reports the following error:
Value VersionMajor missing from key HKEY_LOCAL_MACHINE\\Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Tajima DGML By Pulse 2009.
Value VersionMinor missing from key HKEY_LOCAL_MACHINE\\Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\Tajima DGML By Pulse 2009.

...Matt

StyX
Posts: 51
Joined: Fri Apr 11, 2008 7:14 am
Location: Stavanger, Norway
Contact:

Postby StyX » Fri Jun 12, 2009 3:53 am

So I've been testing a bit more........

I've got a 32bit application that I'm installing to a Window 7 64bit install.

When running the installer it writes two Registry Keys to HKEY_LOCAL_MACHINE\\Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall
One is named by the GUID for the application, the other is named after Title of the application.

{9BB6BF51-E751-4CA4-8B35-0919EBB4A6EE} has the following attributes:

Code: Select all

Name - Type - Data
(Default) - REG_SZ - (value not set)
AuthorizedCDFPrefix - REG_SZ - 
Comments - REG_SZ -
Contact - REG_SZ -
DisplayName - REG_SZ - ProfitBase Sim 7.3 SP 5
DisplayVersion - REG_SZ - 7.3
EstimatedSize - REG_DWORD - 0x000a5c4 (42436)
HelpLink - REG_SZ -
HelpTelephone - REG_SZ -
InstallDate - REG_SZ - 20090612
InstallLocation - REG_SZ - C:\\Program Files.....
InstallSource - REG_SZ - C:\\Users\\admin\\AppData....
Language - REG_DWORD - 0x0000409 (1033)
NoModify - REG_DWORD - 0x00000001 (1)
NoRemove - REG_DWORD - 0x00000001 (1)
NoRepair - REG_DWORD - 0x00000001 (1)
Publisher - REG_SZ - ProfitBase AS
Readme - REG_SZ -
Size - REG_SZ -
SystemComponent - REG_DWORD - 0x00000001 (1)
UninstallString - REG_SZ - C:\\ProgramData\\....
URLInfoAbout - REG_SZ -
URLUpdateInfo - REG_SZ -
Version - REG_DWORD - 0x07030000 (117637120)
VersionMajor - REG_DWORD - 0x00000007 (7)
VersionMinor - REG_DWORD - 0x00000003 (3)
WindowsInstaller - REG_DWORD - 0x00000001 (1)


ProfitBase Sim 7.3 SP5 has the following attributes:

Code: Select all

Name - Type - Data
(Default) - REG_SZ - (value not set)
Comments - REG_SZ - All rights reserved
Contact - REG_SZ - ProfitBase AS
DisplayIcon - REG_SZ - C:\\Programdata\\.....
DisplayName - REG_SZ - ProfitBase Sim 7.3 SP 5
HelpLink - REG_SZ - http://community.profitbase.com
InstallLocation - REG_SZ - C:\\Program Files.....
ModifyPath - REG_SZ - C:\\ProgramData\\.....
Publisher - REG_SZ - ProfitBase AS
UninstallString - REG_SZ - C:\\ProgramData\\....
URLUpdateInfo - REG_SZ - http://www.profitbase.com/


Now if I install the application as usual and then manually add the VersionMajor and VersionMinor to "ProfitBase Sim 7.3 SP 5" the Logo tool checks goes through just fine with no warnings. I've also tried changing the DisplayName attribute of "ProfitBase Sim 7.3 SP 5" to something else and this change then translates into "Program and Features". Also adding the DisplayVersion attribute to "ProfitBase Sim 7.3 SP 5" makes the version also show up in Program and Features.

Also if the "ProfitBase Sim 7.3 SP 5" key is deleted the application is removed from the list in Programs and Features.

However if I change any attribute or even delete the whole GUID key there are no visual changes in the Programs and Features list.

What confuses me however is that MS SQL 2008 that I also have installed on the same computer is pulling it's info to Programs and Features from the GUID corresponding to their application in the registry.

Any thoughts on this ?

mwhouser
Posts: 36
Joined: Wed Oct 08, 2008 12:26 pm

Postby mwhouser » Fri Jun 12, 2009 11:10 am

Uploading the latest report to winqual still did not show our product in the list.

However, I think it's a bug in Microsoft's logo tool.

I went digging in the XML of the report and it looks like they're combining our product with a device driver that we are installing from inside our install.

So I am now taking up the issue with Microsoft.

Thanks,
...Matt

StyX
Posts: 51
Joined: Fri Apr 11, 2008 7:14 am
Location: Stavanger, Norway
Contact:

Postby StyX » Fri Jun 12, 2009 9:45 pm

I figured the best test case I could do was to run the Windows Logo Toolkit on the InstallAware 9 installer, and so I did.

This is the result of the point that has been hampering my submission to the winqual site.....

Code: Select all

Windows 7 Software Logo Toolkit Test Results


1. Clean, reversible, installation
PASS WITH WARNINGS: Write appropriate Add/Remove Program values.

ERROR: Applications are expected to create these registry entries DisplayName, IsntallLocation, Publisher, UninstallString, VersionMajor*, and VersionMinor*.
This application did not create the following registry entries:
Value VersionMajor missing from key HKEY_LOCAL_MACHINE\\Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\InstallAware 9.
Value VersionMinor missing from key HKEY_LOCAL_MACHINE\\Software\\Wow6432Node\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\InstallAware 9.
Value VersionMajor missing for program InstallAware 9.
Value VersionMinor missing for program InstallAware 9.
IMPACT IF NOT FIXED: A user might remove an application not only to free up disk space, but also to return the computer to its state prior to the application being installed. Failure to restore the machine to its original state is a poor user experience. Also applications that do not create the above registry entries will not be found by enterprise inventory tools, and may experience issues in OS migrations and or upgrades scenarios. Windows telemetry tools may not accurately report information about your application.
HOW TO FIX: The application's uninstall process should correctly and fully remove the application. Windows Installer defaults to the following removal rules:
All non-shared application files and folders.
Shared application files whose reference count (refcount) reaches zero.
Registry entries, except for keys that might be shared by other programs.
All shortcuts from the Start menu that the application created at the time of installation.
User preferences may be considered user data and left behind, but an option to do a completely clean removal should be included.
The uninstaller itself (if not using Windows Installer).
The required registry entries should be created when the application is installed. The latest information and best practices that illustrate how to do this can be found HERE.

PASS: Do not force an immediate reboot during installation.

PASS: Do not force an immediate reboot during uninstallation.


This is the exact same error I get with my installer and the version for InstallAware 9 doesn't show up in Programs and Features on Windows 7 :-(

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Sun Jun 14, 2009 4:28 pm

Doesn't it say PASS WITH WARNINGS?
Michael Nesmith

InstallAware

Home of The Next Generation MSI Installer

Get your free copy today - http://www.installaware.com/

StyX
Posts: 51
Joined: Fri Apr 11, 2008 7:14 am
Location: Stavanger, Norway
Contact:

Postby StyX » Sun Jun 14, 2009 6:33 pm

It does, and as far as I understand the requirements for the Works on Windows 7 certification you can get away with these warning. However during the submission of the xml test file we hit a show stopper. I have yet to receive word back from the Microsoft Logo team, about the fact that due to this warning we can't submit our test file, since the parser can't find the version for our product.

What leads me to believe that this is something that should be fixed on the InstallAware end is that the version number is missing in Programs and Features since it is not written to the registry key that Programs and Features AND the Logo Test tool reads from.

File Attached:

missingVersion.png


Return to “Technical Support”

Who is online

Users browsing this forum: No registered users and 33 guests