Doppelte, aber unterschiedliche Windows-Deinstallationen in der Registrierung

543
Gordon

Ich versuche den Unterschied zwischen GUID- und Nicht-GUID-Schlüsseln in HKLM zu verstehen: \ Software \ Microsoft \ Windows \ CurrentVersion \ Uninstall.

Einige Dinge haben einen GUID-Schlüssel und einen Nicht-GUID-Schlüssel mit sehr unterschiedlichen UninstallStrings. Autodesk Revit enthält beispielsweise einen guten UninstallString im GUID-Schlüssel

MsiExec.exe /X) 

Aber im Nicht-GUID-Schlüssel ist der UninstallString eigentlich ein Patch-String, denke ich.

C:\Program Files\Autodesk\Revit 2019\Setup\Setup.exe /P /M RVT /LANG en-US) 

Andere, wie Autodesk Desktop App, haben jedoch keinen GUID-Schlüssel, und der UninstallString im Nicht-GUID-Schlüssel ist gut.

C:\Program Files (x86)\Autodesk\Autodesk Desktop App\removeAdAppMgr.exe 

Ich frage mich, ob das normal ist oder vielleicht etwas, das nur Autodesk tut? Gibt es eine gute Microsoft-Ressource, die ausführlich beschreibt, welche Informationen in den verschiedenen Deinstallationsordnern erwartet werden? Bis jetzt kann ich nichts detailliertes finden.

BEARBEITEN: In einem ähnlichen Hinweis finde ich, dass Microsoft auch Duplikate ausführt, aber keine GUID oder nicht. Hier sind drei verschiedene Deinstallationen mit demselben DisplayName, jedoch drei verschiedenen GUIDs, auf die verwiesen wird. Außerdem sind dies alle x64-Installationen, die jedoch in WOW6432Node enthalten sind. Frustrierend.

Visual C++ 2008 - x64 (KB958357) - v9.0.30729.177 C:\Windows\SysWOW64\msiexec.exe /x /qb+ REBOOTPROMPT=""  Visual C++ 2008 - x64 (KB958357) - v9.0.30729.177 C:\Windows\SysWOW64\msiexec.exe /x /qb+ REBOOTPROMPT=""  Visual C++ 2008 - x64 (KB958357) - v9.0.30729.177 C:\Windows\SysWOW64\msiexec.exe /x /qb+ REBOOTPROMPT="" 
1
Microsoft neigt immer dazu, mit ihrer eigenen Bereitstellung etwas kreativer zu werden. Ich glaube, das sind verschiedene "Aspekte" der gleichen Microsoft-Laufzeitumgebung (die Visual C ++ 2008-Laufzeitumgebung, die eine bestimmte Version von Visual Studio begleitet - nicht sicher, welche Version). Diese Laufzeiten werden für einige C ++ - Anwendungen benötigt, die mit der genannten Version von Visual Studio kompiliert wurden. Stein Åsmul vor 5 Jahren 0

2 Antworten auf die Frage

0
HelpingHand

Wenn ein Entwickler eine Anwendung erstellt, wählen sie normalerweise eine Methode zur Installation aus. Eine beliebte Option ist die Verwendung von Windows Installer und das Erstellen einer MSI. Bei einer MSI-Datei handelt es sich im Wesentlichen um eine Datenbank, die Windows Installer mitteilt, wie die Software installiert werden soll, dh zu löschende Dateien, zu erstellende Registrierungsschlüssel, zu erstellende Dienste usw. Zu den beliebtesten Tools zum Erstellen von MSI-Dateien gehören WiX oder InstallShield .

Bei der Erstellung eines MSI sollte dem Produkt eine eindeutige GUID mit dem Namen ProductCode zugewiesen werden. Diesen Produktcode finden Sie unter dem Deinstallationsschlüssel. Der UninstallString-Wert verwendet den ProductCode, da Windows Installer die Anwendung mithilfe der Option / X deinstallieren kann.

Der Entwickler kann sich dafür entscheiden, Windows Installer nicht zu verwenden und ein eigenes Installationsprogramm zu schreiben. Damit es jedoch unter Programme und Funktionen angezeigt wird, muss der Entwickler die Deinstallationsschlüssel für die Anwendung manuell erstellen. Zumindest müssten sie DisplayName und UninstallString ( ref ) einstellen . Es ist unwahrscheinlich, dass sie eine GUID erstellen würden, um die Anwendung zu identifizieren, aber sie könnten es.

Wenn der Entwickler ein benutzerdefiniertes Installationsprogramm erstellt hat, muss er auch eine Methode zum Deinstallieren der Anwendung angeben. Daher erstellen die meisten Entwickler eine separate Deinstallationsanwendung, auf die von UninstallString verwiesen wird. Diese Anwendung kann auch verwendet werden, um eine Option zum Ändern, Reparieren oder Deinstallieren der Anwendung bereitzustellen.

Es ist wirklich die Präferenz des Entwicklers.

Defekter Link zu Mr. Raymond Chen - ich konnte es auch nicht auf Wayback finden. Vielleicht ein Copy / Paste-Schluckauf? Stein Åsmul vor 5 Jahren 0
reparierte die Verbindung HelpingHand vor 5 Jahren 0
0
Stein Åsmul

Gute Antwort bereits gepostet, ich werde trotzdem das posten, was ich angefangen habe zu schreiben, bevor Ihre Frage zuvor gelöscht wurde.

Die GUIDSchlüssel sind im Allgemeinen Windows Installer setups(Dateien mit *.MSIErweiterung) - der Alterungsstandard für die Microsoft-Bereitstellung, der häufig in Unternehmen verwendet wird.

Es gibt viele verschiedene Arten von Installationsprogrammen, aber diese werden im Allgemeinen als setup.exeDateien oder MSI filesneuere Installationsformate wie APPX(bereits veraltet), MSIX(im Entstehen begriffen) usw. eingeschlossen. Es gibt wirklich viele Möglichkeiten.

AutoDesk scheint ein altes setup.exInstaller-Installationsprogramm zu verwenden, das nicht auf diesem basiert Windows Installer, obwohl es immer noch möglich ist, setup.exedass es sich hierbei um einen Wrapper handelt, der ein Windows Installer-Paket startet.

Ich werde im Folgenden einige Links zu Informationen zu verschiedenen Arten von Setups und Aufgaben hinzufügen, die beim Setup (z. B. zum Extrahieren von Dateien) erforderlich sind.


Einige Links :

Es gibt viele andere Links, die in diese Antworten zu ähnlichen Dingen eingebettet sind.