-
Notifications
You must be signed in to change notification settings - Fork 5.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
win_pkg: does not check for SystemComponent in Uninstall registry keys #33357
Comments
Ran my code over this its reported as version 255.0.0 MIT need to fix it. They have made a bad package/install This indicates they have release 255 major releases.
|
I've already spoken to them and they say it's out of their control. Their application manifest doesn't define a version 255 and there is no MSI installer embedded in the Air file. These version numbers have come from actions taken by the Adobe Air application installer, and might even be a default value (255 as in hex ff). I'm not sure what your code is meant to do or how it's doing it, but fundamentally this is a problem of two Uninstall keys with the same DisplayName, and package management ends up reporting a single package with the incorrect number. The solution shouldn't be specific to this problem or this package, it just demonstrates a need for some flexibility in how packages are detected. Maybe this would be too specific:
Maybe something more like this:
|
I think some more flexibility into how packages are detected is a reasonable request. I've notified @twangboy of this request and he has added it to this list of items for looking at possible additions to the win_repo. Thanks! |
The results are has/dict and the key is the key, you can only have one key, and it will be over written if something has the same generated key. This seems to have some info on it As you can see the uninstall string is the same for both entries. However SystemComponent (one with 255) are not listed in the "Uninstall or change a program" listing, I will add code for this to change the key/package name and so the name does not clash anymore in the new code I'm developing Fixing this in the existing code set might cause existing users issues. Windows Packaging is a mess (not salt), making hard to deal with every combination, its had about 8 years of exists.
|
@Ch3LL thanks for looking at this, much appreciated. @damon-atkins I think in most cases the default behaviour is sensible, it just needs some options that let you work around issues as you come across them. I've just found that anything built with WiX is potentially writing Uninstall data into the profile of the installing user. The new Python installers demonstrate the problem: |
Excel, Word, etc are components of Office. Unfortunately without components you can not tell who has install Word. Components are a an integral part of package management... For example from my reading System Component was original design for Drivers and the like. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. If this issue is closed prematurely, please leave a comment and we will gladly reopen the issue. |
Since this key isn't checked the reported version of applications can be incorrect where an MSI installation process actually handled installation, but the application is managed at a higher level by another product e.g. Adobe Air
As an example:
reg query HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{4C00BFFA-9D98-7F05-96CE-4E472143C43A} /v Display*
reg query HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\edu.media.mit.Scratch2Editor /v Display*
The first value should have been ignored in favour of the second, since the first is flagged as a system component:
reg query HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{4C00BFFA-9D98-7F05-96CE-4E472143C43A} /v SystemComponent
Version 446 is listed in "Programs and Features" but win_pkg reports the wrong value:
salt salt-test pkg.version mit_scratch_2
Tested on 2015.8.8.2
The text was updated successfully, but these errors were encountered: