Bereitstellungsleitfaden
Dieser Leitfaden erklärt gängige Methoden zur Bereitstellung eines MSI-Pakets, von der interaktiven Installation bis hin zum vollständig automatisierten Rollout.
<PRODUCTNAME> ist "idgard Sync". <USERNAME> ist der Windows-Benutzername des Zielbenutzers.
Best Practices
- Halten Sie Bereitstellungsschritte vorhersehbar und wiederholbar
- Nutzen Sie Protokollierung für unbeaufsichtigte Installationen
- Prüfen Sie das Installationsergebnis nach dem Rollout
Installation
Installation mit vollständiger UI (Weiter → Weiter → Fertigstellen)
Verwenden Sie diese Option, wenn ein Benutzer die Installation manuell auf einer Workstation durchführt (der Benutzer benötigt Administratorrechte).
Schritte
- Doppelklicken Sie auf die
.msi-Datei. - Folgen Sie dem Installationsassistenten.
- Klicken Sie sich mit Weiter durch die Dialoge.
- Klicken Sie am Ende auf Fertigstellen.
Note
Am besten geeignet für
- manuelle Installationen
- kleine Unternehmen
- IT-begleitete geführte Einrichtung
Unbeaufsichtigte Installation (msiexec ohne UI)
Verwenden Sie diese Option für die unbeaufsichtigte Bereitstellung per Skript, Intune, SCCM, GPO oder RMM-Tools.
msiexec /i "setup.msi" /qn /norestart
Nützliche Optionen
/i= Paket installieren/qn= keine UI (silent)/norestart= nicht automatisch neu starten/l*v "C:\Temp\install.log"= ausführliche Protokollierung
Beispiel mit Protokollierung:
msiexec /i "setup.msi" /qn /norestart /l*v "C:\Temp\install.log"
Note
Am besten geeignet für
- Installationen mit detaillierter Protokollierung
- mittelgroße Unternehmen
- zentralisierte IT-Bereitstellung
Installation mit benutzerdefinierten Eigenschaften
Verwenden Sie öffentliche MSI-Eigenschaften (müssen GROSSGESCHRIEBEN sein), um das Verhalten des Installers zu steuern.
Weitere Informationen zu allen verfügbaren Eigenschaften von idgard Sync finden Sie unter Installer-Benutzervariablen (öffentliche MSI-Eigenschaften).
Beispiel: Silent-Installation mit booleschem Wert MY_BOOLEAN_PROPERTY=1 – 1 für Eigenschaft aktivieren (ja, true)
msiexec /i "setup.msi" /qn MY_BOOLEAN_PROPERTY=1
Beispiel: Silent-Installation mit booleschem Wert MY_BOOLEAN_PROPERTY=0 – o für Eigenschaft deaktivieren (nein, false)
msiexec /i "setup.msi" /qn MY_BOOLEAN_PROPERTY=0
Beispiel: Silent-Installation mit Zeichenfolge MY_STRING_PROPERTY – das gesamte NAME=Wert-Paar in Anführungszeichen setzen "NAME=Mein Wert", wenn der Wert Leerzeichen enthält
msiexec /i "setup.msi" /qn "MY_STRING_PROPERTY=Lorem Ipsum"
Gängige Muster
MY_BOOLEAN_PROPERTY=1oderMY_BOOLEAN_PROPERTY=0(boolesch)"MY_STRING_PROPERTY=Lorem Ipsum"(Zeichenfolge mit Leerzeichen – gesamtes Paar in Anführungszeichen)
Konfiguration nach der Bereitstellung über Konfigurationsdateien
Wenden Sie nach der MSI-Bereitstellung umgebungsspezifische Einstellungen mithilfe von Konfigurationsdateien an.
Es gibt einen speziellen Konfigurationsordner: C:\Users\<USERNAME>\AppData\Local\<PRODUCTNAME>\config.
Typischer Ablauf
- MSI-Paket bereitstellen.
- Konfigurationsdatei(en) (zum Beispiel: .json, .config, .xml, .ini) in den Konfigurationsordner config kopieren.
- Sichere Werte (Zertifikate, Tokens, Endpunkte) über Secret-Management/Tooling setzen.
- Anwendung neustarten.
Beispielhafter Skriptablauf
msiexec /i "setup.msi" /qn /norestart
Copy-Item "C:\IT\configs\my-config.json" "C:\Users\<USERNAME>\AppData\Local\<PRODUCTNAME>\configs\my-config.json" -Force
# Anwendung neu starten, z.B. über das Startmenü
Deinstallation
Interaktive Deinstallation durch den Anwendungsbenutzer
Wenn der angemeldete Benutzer idgard Sync für sich selbst deinstalliert – über Einstellungen → Apps oder die Systemsteuerung – werden alle benutzerspezifischen Daten automatisch bereinigt:
- Sync-Root-Registrierung
- Registrierungseinträge
- idgard Sync-Laufwerk
- Kontextmenü-Erweiterung
Dies ist der empfohlene Deinstallationsweg für Endbenutzer.
Silent-Deinstallation oder Deinstallation durch einen anderen Benutzer
Wenn die Anwendung unbeaufsichtigt deinstalliert wird (z. B. über Intune, SCCM, GPO oder msiexec /qn) oder durch einen Administrator, der nicht der idgard Sync-Benutzer ist, läuft das MSI ohne Zugriff auf die Benutzersitzung und kann benutzerspezifische Daten nicht bereinigen.
Die folgenden benutzerspezifischen Daten verbleiben nach der Deinstallation für jeden Benutzer, der idgard Sync auf diesem Rechner aktiv genutzt hat, und müssen für jeden dieser Benutzer separat entfernt werden:
- Sync-Root-Registrierung
- Registrierungseinträge unter
HKCU - idgard Sync-Laufwerk
- Kontextmenü-Erweiterung
Silent-Deinstallationsbefehl
msiexec /x "setup.msi" /qn /norestart
Manuelle Bereinigung pro Benutzerkonto
Führen Sie die folgenden Schritte für jeden betroffenen Benutzer in einer erhöhten PowerShell-Sitzung aus.
Note
Ersetzen Sie <USERNAME> durch den Windows-Benutzernamen und <SID> durch die entsprechende Sicherheitskennung (SID).
Alle lokalen Benutzer mit SIDs auflisten: Get-LocalUser | Select-Object Name, SID
1. Anwendungsdaten löschen
Remove-Item "C:\Users\<USERNAME>\AppData\Local\<PRODUCTNAME>" -Recurse -Force
2. Registrierungseinträge entfernen
Falls der Benutzer nicht angemeldet ist, zuerst die Registry-Struktur laden:
& "C:\Windows\System32\reg.exe" load "HKU\<SID>" "C:\Users\<USERNAME>\NTUSER.DAT"
Note
Der beim reg.exe load verwendete Name (hier <SID>) muss in allen nachfolgenden Befehlen konsistent verwendet werden. Es kann ein beliebiger eindeutiger Name gewählt werden — die Verwendung der SID vermeidet Konflikte.
Anwendungseinstellungen und Autostart-Eintrag löschen:
& "C:\Windows\System32\reg.exe" delete "HKU\<SID>\Software\<PRODUCTNAME>" /f
& "C:\Windows\System32\reg.exe" delete "HKU\<SID>\Software\Microsoft\Windows\CurrentVersion\Run" /v "<PRODUCTNAME>" /f
& "C:\Windows\System32\reg.exe" delete "HKU\<SID>\Software\Microsoft\Windows\CurrentVersion\Explorer\StartupApproved\Run" /v "<PRODUCTNAME>" /f
Registry-Struktur anschließend wieder entladen, falls sie manuell geladen wurde:
& "C:\Windows\System32\reg.exe" unload "HKU\<SID>"
3. Kontextmenü-Erweiterung entfernen
Get-AppxPackage -Name "Idgard.Sync.WinShell" -User <SID> | Remove-AppxPackage -User <SID>
4. Sync-Root-Registrierung aufheben
Die Sync-Root-Registrierung ist in HKLM gespeichert und kann direkt durch einen Administrator gelöscht werden. Der Schlüsselname folgt dem Muster idgard!<SID>!<USERNAME>:
& "C:\Windows\System32\reg.exe" delete "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\SyncRootManager\idgard!<SID>!<USERNAME>" /f
5. Veralteten Sync-Root-Namespace-Eintrag entfernen
Nach der Deinstallation kann ein veralteter Eintrag in der Shell-Namespace-Registrierung des Benutzers verbleiben, der dazu führt, dass Explorer einen verwaisten Eintrag in der Navigationsleiste anzeigt.
Zuerst alle Einträge unter dem NameSpace-Schlüssel auflisten, um den idgard-Eintrag anhand seines Anzeigenamens zu identifizieren:
New-PSDrive -Name HKU -PSProvider Registry -Root HKEY_USERS -ErrorAction SilentlyContinue | Out-Null
Get-ChildItem "HKU:\<SID>\Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace" |
ForEach-Object {
[PSCustomObject]@{
GUID = $_.PSChildName
DisplayName = (Get-ItemProperty $_.PSPath).'(default)'
}
}
Die GUID des idgard-Eintrags aus der Ausgabe notieren und anschließend löschen:
& "C:\Windows\System32\reg.exe" delete "HKU\<SID>\Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\<GUID>" /f