4 Stimmen

Privilegienerhöhung bei MSI-Deinstallation mit Installshield und Benutzerdialog

Ich muss das Folgende erreichen: Die Deinstallation einer MSI soll einen Benutzerdialog präsentieren, anhand dessen Windows Installer weiß, wie genau die Software zu entfernen ist (in diesem Fall: Der Benutzer muss wählen, ob auch Datenbanken entfernt werden sollen oder nicht).

Während des Deinstallationsvorgangs werden auch benutzerdefinierte Aktionen ausgelöst. Für alle diese Aktionen sind Administratorrechte erforderlich.

Ich muss also dafür sorgen, dass unter "Programme und Funktionen" entweder die vollständige Benutzeroberfläche bei "Entfernen" oder das Dialogfeld "Für Administratorrechte authentifizieren" angezeigt wird, wenn ich auf "Ändern" und dann auf "Entfernen" klicke.

Wie kann ich das tun?

4voto

Mephisztoe Punkte 3084

Als Referenz:

Programme hinzufügen und entfernen (ARP), bzw. Programme und Funktionen (unter Vista+), zeigt beim Entfernen nur die Basis-UI an. Zum Anzeigen von Dialogen ist die vollständige Benutzeroberfläche erforderlich. Ergebnis: Hier ist keine Benutzerinteraktion möglich.

Lösung:

Wenn es keine andere Möglichkeit gibt, als Dialoge beim Entfernen anzuzeigen, muss Entfernen deaktiviert werden und der Entfernungsprozess muss über die Option Ändern ausgelöst werden, die die vollständige Benutzeroberfläche anzeigt.

Zusätzliche Informationen:

Wenn es benutzerdefinierte Aktionen gibt, die erhöhte Berechtigungen erfordern, müssen sie im Systemkontext als aufgeschoben konfiguriert werden. Dies führt dazu, dass das Setup die Berechtigungen beim Eintritt in die Ausführungssequenz erhöht und somit das UAC-Dialogfeld anzeigt, das administrative Berechtigungen erfordert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X