Silent Installationen helfen dabei, Anwendungen und Updates geräteübergreifend bereitzustellen, ohne Benutzer zu unterbrechen oder von jedem Mitarbeiter zu verlangen, diese manuell zu genehmigen und zu installieren. Allerdings können IT-Teams auf Schwierigkeiten stoßen, wenn sie versuchen, eine Silent Installation mit einem EXE-Installer auszuführen.
MSI-Installer teilen sich über msiexec eine Reihe von Silent-Switches, was die Bereitstellung von Silent-Installationsbefehlen erleichtert, aber EXE-Installer haben diese Einheitlichkeit nicht. Der Switch variiert je nach Tool, mit dem der Installer erstellt wurde. Deshalb kann der Befehl /S bei einer EXE funktionieren, bei der nächsten aber gar nichts bewirken. Die Switches in diesem Leitfaden funktionieren unter Windows 10 und Windows 11 auf die gleiche Weise.
Vor diesem Hintergrund sehen wir uns stille EXE-Installationsbefehle, einige gängige Schalter, die Identifizierung des Installer-Frameworks sowie die Durchführung stiller Installationen und die dabei möglichen Hindernisse an.
Gängige Schalter für die unbeaufsichtigte Installation von EXE-Dateien
Welcher Silent-Install-Schalter erforderlich ist, hängt von dem Framework ab, mit dem die EXE erstellt wurde. Es gibt zwar mehrere Varianten, aber es ist möglich, das Installer-Framework und den Silent-Install-Befehl frühzeitig zu identifizieren.
Zu den gängigen Schaltern für die stille Installation gehören:
Installer-Framework | Befehl für die unbeaufsichtigte Installation | Anmerkungen |
InstallShield (Basic MSI) |
|
|
InstallShield (InstallScript) |
| Benötigt eine aufgezeichnete Antwortdatei ( |
Inno Setup |
|
|
NSIS (Nullsoft) |
| Groß-/Kleinschreibung beachten: |
WiX Burn-Bundles |
| Führen Sie das Bundle mit |
Advanced Installer EXE |
|
|
Auch wenn Sie Ihren Schalter für die stille Installation bereits gefunden haben, sollten Sie ihn testen, bevor Sie versuchen, ihn auf mehreren Geräten bereitzustellen. Ein falscher Schalter kann dazu führen, dass eine Installation bei einer Eingabeaufforderung hängen bleibt, die niemand sehen kann. Daher ist ein Test auf einem einzelnen Rechner die Zeit wert.
Schritt 1: Ermitteln Sie, welches Tool das Installationsprogramm erstellt hat
Bevor Sie irgendetwas anderes tun, sollten Sie ermitteln, welches Framework das Installationsprogramm verwendet. Ein EXE-Installationsprogramm ist in der Regel ein Wrapper, der mit einem Paketierungstool wie InstallShield, NSIS oder Advanced Installer erstellt wurde. Jedes Tool hat seine eigenen Schalter. Wenn Sie es identifizieren, können Sie die Optionen auf ein oder zwei eingrenzen.
Sie können das Tool auf verschiedene Arten identifizieren:
Führen Sie das Installationsprogramm mit
/?oder/helpaus: Ein Hilfefenster ist oft der einfachste Weg, das Tool zu identifizieren, da viele Installationsprogramme ihre Optionen auflisten oder das Tool benennen. In der Microsoft-WinGet-Dokumentation wird empfohlen, ein Installationsprogramm mit-?auszuführen, um dessen Silent-Schalter zu ermitteln.Sehen Sie sich den Einrichtungsassistenten an: Der Einrichtungsassistent nennt oft das Paketierungstool. Sie können ihn normal starten und dann die Titelleiste, das Branding oder den Info-Text prüfen, um zu sehen, ob es dort aufgeführt ist. Brechen Sie den Vorgang unbedingt vor der Installation ab, da Sie zuerst noch ein paar weitere Schritte befolgen sollten.
Prüfen Sie das WinGet-Manifest der App. Wenn die App im Community-Repository von Windows Package Manager enthalten ist, können Sie ihre Manifest-Einträge prüfen. Dazu gehört oft ein Installer-Typ wie Inno, Nullsoft, WiX, Burn oder MSI.
Wenn keine dieser Methoden funktioniert, können Sie die Bereitstellungsdokumentation des Anbieters für weitere Informationen prüfen.
Schritt 2: Finden Sie die Silent-Install-Schalter für die EXE
Als Nächstes müssen Sie herausfinden, welche Silent-Installations-Switches es gibt. Es gibt einige Möglichkeiten, wie Sie dabei vorgehen können, darunter:
Prüfen Sie die Bereitstellungsdokumentation des Anbieters
Anbieter bieten häufig Optionen für die unbeaufsichtigte Installation an, insbesondere wenn sie die Bereitstellung in Unternehmen unterstützen. Ein Blick in die Dokumentation führt Sie oft direkt zum Schalter für die unbeaufsichtigte Installation, daher sollte dies Ihre erste Anlaufstelle sein. In der Dokumentation wird oft angegeben, welcher Schalter zu verwenden ist, und sie kann auch benutzerdefinierte Optionen enthalten, die der Anbieter hinzugefügt hat, etwa Lizenzschlüssel oder die Auswahl von Funktionen.
Lesen Sie die Hilfsausgabe des Installationsprogramms
Falls die Dokumentation nicht eindeutig ist, können Sie die Hilfeausgabe des Installationsprogramms prüfen. Führen Sie dazu die EXE in der Eingabeaufforderung mit /? oder /help aus. Wenn ein Fenster mit Nutzungshinweisen erscheint, sollten dort die unterstützten Optionen aufgeführt sein. Wenn keine Hilfeausgabe vorhanden ist, müssen Sie die Installation abbrechen und eine andere Methode versuchen.
Suchen Sie das WinGet-Manifest der App
Wenn sich eine App im Community-Repository von WinGet befindet, muss sie eine unbeaufsichtigte Installation unterstützen. Sie können das winget-pkgs -Repository auf GitHub durchsuchen, um den Installertyp und die für diese App erfassten Silent-Switches zu finden.
Versuchen Sie als letzten Ausweg Universal Silent Switch Finder
Wenn alles andere fehlschlägt, ist der Universal Silent Switch Finder ein kostenloses Legacy-Dienstprogramm, das eine EXE untersucht und einen Schalter für den jeweiligen Installationsprogrammtyp vorschlägt. Es gibt jedoch Einschränkungen: Die ursprüngliche Website ist nicht mehr verfügbar, und für benutzerdefinierte Installationsprogramme, die kein bekanntes Framework verwenden, kann das Tool keine Schalter finden. Wenn Sie es also verwenden müssen, stellen Sie sicher, dass Sie es aus einer vertrauenswürdigen Quelle herunterladen und den vorgeschlagenen Befehl testen.
Silent-Installationsschalter nach Installer-Framework
Sehen wir uns nun einige der Silent-Installations-Switches an, auf die Sie stoßen können. Wenn Sie wissen, welchen Installer-Framework-Typ Sie verwenden, können Sie die benötigten Installations-Switches leichter identifizieren. Diese Liste hilft Ihnen dabei, die passenden Switches einfacher zu finden:
Stille Installation mit InstallShield
Die InstallShield-Methode für die unbeaufsichtigte Installation kann vom Projekttyp abhängen, mit dem die setup.exe erstellt wurde. Dazu gehört:
Basic MSI-Projekte: Diese führen
setup.exe /s /v"/qn"ohne Verwendung einer Antwortdatei aus. Zwischen/vund seinem Wert ist kein Leerzeichen zulässig, daher funktioniert/v"/qn", aber/v "/qn"nicht. Sie können auch MSI-Eigenschaften innerhalb der/v-Anführungszeichen übergeben, zum Beispiel:setup.exe /s /v"/qn INSTALLDIR=D:\Destination".InstallScript- und InstallScript-MSI-Projekte: Diese benötigen eine Antwortdatei. Führen Sie
setup.exe /reinmal aus, um Ihre Antworten in einersetup.iss-Datei aufzuzeichnen, und führen Sie dannsetup.exe /saus, um sie lautlos wiederzugeben. Hierfür sollten Sie/f1verwenden, um den Pfad zur Antwortdatei festzulegen, und/f2, um den Log-Pfad festzulegen, jeweils als absolute Pfade.
Inno Setup
Bei Inno können Sie den Befehl /SILENT verwenden, um den Assistenten auszublenden, aber weiterhin ein Fortschrittsfenster anzuzeigen, oder /VERYSILENT, um alles auszublenden. Sie können Meldungsfelder auch mit /SUPPRESSMSGBOXES unterdrücken oder automatische Neustarts mit /NORESTART verhindern.
Ein Beispiel: Eine unbeaufsichtigte Installation mit Inno könnte so aussehen: setup.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /LOG="C:\Logs\app.log".
Beachten Sie, dass sich einige Meldungsfenster nicht unterdrücken lassen und /DIR= einen vollständig qualifizierten Pfad benötigt, um zu funktionieren.
NSIS (Nullsoft)
Mit Nullsoft können Sie den Befehl /S verwenden, um eine Silent Installation auszuführen. Beachten Sie, dass bei NSIS die Groß- und Kleinschreibung beachtet wird, daher muss das S großgeschrieben werden. Sie können den Installationsordner festlegen, indem Sie /D= als letzte Option ohne Anführungszeichen verwenden (auch wenn der Pfad Leerzeichen enthält).
Beispielsweise können Sie setup.exe /S /D=C:\Program Files\App ausführen.
Autoren von Installationsprogrammen können diese Standardeinstellungen überschreiben. Wenn die Dokumentation eines Anbieters also andere Befehle angibt, sollten Sie diese verwenden.
WiX Burn-Bundles
Burn-Bundles sind EXEs, die mehrere Pakete verketten, in der Regel MSIs. Führen Sie das Bundle unbedingt mit /? aus, um seine Optionen zu prüfen, da diese angepasst werden können.
Ein WiX Burn-Bundle kann beispielsweise so aussehen: setup.exe /quiet /norestart /log C:\Logs\app.log.
Advanced Installer-EXEs
Advanced Installer-EXEs können /exenoui verwenden, um die Oberfläche des Wrappers auszublenden, gefolgt von msiexec -Optionen, um den Befehl auf das enthaltene MSI anzuwenden. Das könnte zum Beispiel so aussehen: setup.exe /exenoui /qn /norestart.
So installieren Sie eine EXE unbeaufsichtigt über die Befehlszeile und PowerShell
Befehlszeile und PowerShell sind zwei der gängigsten Methoden, um eine EXE zu installieren. Wenn Sie eine unbeaufsichtigte Installation ausführen möchten, können Sie dazu ein paar einfache Schritte befolgen:
Über die Eingabeaufforderung
Um eine EXE über die Befehlszeile per Silent Installation zu installieren, führen Sie die Eingabeaufforderung als Administrator aus, wenn die Installation für alle Benutzer gilt. Wechseln Sie von dort in den Ordner des Installers und führen Sie die EXE mit ihren Schaltern aus. Setzen Sie den Pfad unbedingt in Anführungszeichen, wenn er Leerzeichen enthält.
Beachten Sie, dass einige setup.exe -Dateien einen zweiten Prozess starten und zur Eingabeaufforderung zurückkehren, bevor die Installation abgeschlossen ist. In diesen Fällen sollten Sie start /wait verwenden, damit die Eingabeaufforderung wartet, bis die Installation abgeschlossen ist. InstallShield Basic MSI-Setups akzeptieren auch /w.
Aus PowerShell
Wenn Sie PowerShell verwenden, können Sie Start-Process mit -ArgumentList, -Wait und -PassThru nutzen und dann den Exitcode aus dem zurückgegebenen Prozessobjekt auslesen. Microsoft empfiehlt, alle Argumente als einzelne ArgumentList -Zeichenfolge zu übergeben, einschließlich aller erforderlichen Anführungszeichen.
Ein PowerShell-Befehl könnte zum Beispiel so aussehen:
$p = Start-Process -FilePath "C:\Installers\setup.exe" -ArgumentList "/VERYSILENT /SUPPRESSMSGBOXES /NORESTART" -Wait -PassThru
$p.ExitCode
Behandeln Sie Neustarts und Exit-Codes, bevor Sie bereitstellen
Viele Updates oder Installationen erfordern einen Neustart, um erfolgreich abgeschlossen zu werden. Stille Installationen können dies jedoch komplizierter machen. Wenn eine stille Installation den Computer eines Benutzers mitten am Arbeitstag neu startet, kann das zu Unterbrechungen führen. Gleichzeitig kann es ebenfalls zu Problemen führen, wenn die Installation Erfolg meldet, obwohl das Gerät noch einen Neustart benötigt, und ausstehende Updates dann als abgeschlossen markiert werden.
Damit kommen wir zu den Exit-Codes. Ein Exit-Code ist die Zahl, die ein Installationsprogramm nach Abschluss zurückgibt und die von Skripten und Bereitstellungstools ausgelesen wird, um festzustellen, ob die Installation erfolgreich war, fehlgeschlagen ist oder einen Neustart erfordert. Diese Codes sind für MSI-basierte Installationen standardisiert (0 für Erfolg und 3010 für Erfolg mit erforderlichem Neustart), können aber je nach EXE-Framework variieren.
Beim Umgang mit Neustarts und Exit-Codes sollten Sie einige wichtige Punkte beachten:
Inno Setup kann ohne Warnung neu starten: Wenn ein Neustart erforderlich ist und
/NORESTARTnicht verwendet wird, zeigt der Befehl/SILENTweiterhin die Abfrage "Jetzt neu starten?" an, während/VERYSILENTden Computer ohne Nachfrage neu startet. Sie sollten/VERYSILENTmit/NORESTARTkombinieren, um sicherzustellen, dass die Installation ohne Unterbrechung erfolgt, auch wenn Benutzer dennoch neu starten müssen, falls die Installation dies erfordert.Inno Setup gibt auch dann 0 zurück, wenn ein Neustart erforderlich ist: Manchmal wird eine Installation als abgeschlossen gemeldet, obwohl noch ein Neustart erforderlich ist. Sie können
/RESTARTEXITCODE=3010zum Befehl hinzufügen, damit Ihr Bereitstellungstool erkennen kann, wann ein Neustart aussteht.InstallShield Basic MSI- und Advanced Installer-Setups reichen
msiexec-Optionen folgendermaßen weiter: Wenn Sie/norestartinnerhalb desmsiexec-Teils des Befehls hinzufügen, können Neustarts unterdrückt werden, sodass das Gerät nicht unerwartet neu startet, während der Benutzer arbeitet.Testen Sie den Exit-Code auf einem Gerät. Testen Sie den Befehl unbedingt, bevor Sie das Update bereitstellen. Führen Sie den Befehl in PowerShell aus, lesen Sie den Exit-Code aus und bestätigen Sie, welcher Rückgabewert für Erfolg und für einen ausstehenden Neustart zurückgegeben wird, bevor Sie Ihr Bereitstellungstool konfigurieren.
In Intune werden Exit-Codes Rückgabetypen zugeordnet, und was jeder Code bewirkt, hängt von der Geräteneustart-Einstellung der App ab. Mit „Verhalten anhand von Rückgabecodes bestimmen“ startet ein Hard-Reboot-Code das Gerät sofort neu, während ein Soft-Reboot-Code dem Benutzer mitteilt, dass ein Neustart erforderlich ist. Daher sollten Sie sicherstellen, dass der Code, den Ihr Installer zurückgibt, dem entspricht, was Intune erwartet.
Häufige Probleme bei der unbeaufsichtigten EXE-Installation beheben
Beim Versuch einer stillen Installation können einige Probleme oder Schwierigkeiten auftreten. Zu den häufigen Problemen bei der stillen Installation von EXE-Dateien gehören:
Das Installationsprogramm ignoriert den Silent-Schalter
Wenn das Installationsprogramm den Silent-Switch ignoriert, kann das bedeuten, dass der Switch zu einem anderen Framework gehört oder die Groß- und Kleinschreibung falsch ist. Prüfen Sie unbedingt noch einmal die Dokumentation des Anbieters, bestätigen Sie das Framework und stellen Sie sicher, dass alles korrekt geschrieben ist. NSIS akzeptiert zum Beispiel nur das großgeschriebene /S; wenn Sie also die Großschreibung vergessen haben, macht das einen Unterschied.
Die Installation hängt sich auf und wird nie abgeschlossen
Manchmal bedeutet es, wenn die Installation nicht abgeschlossen wird, dass sie auf eine Eingabe wartet, die niemand sehen kann. Wenn eine Intune-Installation beispielsweise länger als das Timeout wartet (standardmäßig 60 Minuten), wird sie als fehlgeschlagen markiert. Häufige Ursachen sind einige Inno Setup-Meldungsfenster, die /SUPPRESSMSGBOXES nicht ausblenden kann, sowie InstallShield-Voraussetzungen, die durch /s nicht unbeaufsichtigt werden.
Die Installation schlägt fehl, wenn ein Pfad Leerzeichen enthält
Dies ist ein weiterer Fall, in dem ein Tippfehler im Befehl den entscheidenden Unterschied machen kann. Frameworks haben oft unterschiedliche Regeln für Anführungszeichen, und die Verwendung der falschen Art von Anführungszeichen oder Leerzeichen kann dazu führen, dass eine Installation fehlschlägt. Zum Beispiel muss bei NSIS /D= an letzter Stelle stehen und darf keine Anführungszeichen verwenden, selbst wenn der Pfad Leerzeichen enthält, während InstallShield maskierte Anführungszeichen innerhalb des Werts /v benötigt.
Es gibt kein Protokoll, das zeigt, was schiefgelaufen ist
Was passiert, wenn etwas schiefgeht und es keinen klaren Hinweis darauf gibt, warum? Wenn Sie die Protokollierung vor dem Testen nicht aktiviert haben, können Sie die Ursache möglicherweise nicht ermitteln. Stellen Sie sicher, dass Sie die Protokollierung aktivieren, bevor Sie testen, und die Logs mit einem vorhandenen Ordner verknüpfen. Dabei wird für Inno Setup der Befehl /LOG="path" verwendet, für InstallShield setup.exe /debuglog"path", und /log für WiX-Burn-Bundles.
Die EXE hat keine Option für eine unbeaufsichtigte Installation
Einige EXE-Dateien bieten überhaupt keine Option für eine stille Installation. Prüfen Sie in diesem Fall, ob der Anbieter eine MSI-Version des Installationsprogramms anbietet, die standardmäßige Schalter für die stille Installation unterstützt. Falls nicht, müssen Sie die EXE-Datei möglicherweise neu paketieren, was etwas Spezialwissen erfordert.
Eine unbeaufsichtigte EXE-Installation mit Microsoft Intune bereitstellen
Wenn Sie Microsoft Intune verwenden, gibt es einige Win32-App-Einstellungen, die Sie bei der Bereitstellung einer stillen EXE-Installation richtig konfigurieren sollten. Intune stellt EXEs als Win32-Apps bereit, wobei das Installationsprogramm und die zugehörigen Dateien in eine .intunewin Datei verpackt werden. Die Datei wird dann mit einem Installationsbefehl, einem Deinstallationsbefehl und Erkennungsregeln hochgeladen. Da Intune keine interaktiven Installationen unterstützt, muss der Installationsbefehl vollständig unbeaufsichtigt sein.
Zu diesen Befehlen gehören:
Installationsbefehl: der EXE-Name gefolgt von seinen Silent-Switches, wie getestet. Beachten Sie, dass Intune anstelle einer Befehlszeile auch ein PowerShell-Skript akzeptieren kann.
Deinstallationsbefehl: wann und wie die Anwendung deinstalliert werden soll. Beachten Sie, dass Umgebungsvariablen hier nicht erweitert werden. Verwenden Sie daher am besten ein Wrapper-Skript, wenn die Deinstallation diese benötigt.
PowerShell in Befehlsfeldern: Wenn ein Befehl
powershell.exeaufruft, Intune startet die 32-Bit-Version von PowerShell, die Windows in 32-Bit-Systemordner umleitet. Um stattdessen 64-Bit-PowerShell auszuführen, verwenden Sie%SystemRoot%\Sysnative\WindowsPowerShell\v1.0\powershell.exe.Installationsverhalten: Wenn Sie das Installationsverhalten festlegen, sollten Sie für Installationen, die Administratorrechte benötigen, System auswählen. Wenn eine Installation im Benutzerkontext Administratorrechte erfordert, die der Benutzer nicht hat, schlägt sie fehl.
Zeitüberschreitung: Intune wartet standardmäßig 60 Minuten, bevor die Installation als fehlgeschlagen markiert wird, dies kann jedoch auf bis zu einen Tag angepasst werden.
Rückgabecodes: Intune fügt beim Erstellen der App Standardcodes hinzu. Sie können benutzerdefinierte Codes hinzufügen, die Ihr Installer zurückgibt, etwa den für Inno Setup festgelegten Wert
/RESTARTEXITCODE. Ein Wiederholungscode veranlasst Intune zu drei Versuchen, wobei zwischen den einzelnen Versuchen jeweils fünf Minuten liegen.Erkennungsregeln: Mindestens eine Regel ist erforderlich, damit Intune bestätigen kann, dass die App installiert ist. Verwenden Sie unbedingt eine Datei-, Registrierungs- oder Skriptregel, da EXEs keinen MSI-Produktcode haben.
Warum unbeaufsichtigte EXE-Installationen in einem App-Katalog kompliziert werden
An diesem Punkt kann es sich so anfühlen, als wären unbeaufsichtigte EXE-Installationen komplizierter, als sie sein sollten. Für jede EXE müssen das Framework identifiziert, die Schalter bestätigt, das Neustart- und Exit-Code-Verhalten getestet, Erkennungsregeln geschrieben und weitere Schritte durchgeführt werden. Und wenn dann ein neues Update erscheint, beginnt der Prozess von vorn.
Wiederholen Sie das für jede einzelne App, und Recherche sowie Tests können zu einem erheblichen Arbeitsaufwand werden.
KI-gestützte Packaging-Tools können einen großen Teil dieser Arbeit übernehmen, selbst in großen Umgebungen.
Splashtop Agentic Packr ist ein KI-gestütztes Tool für die Anwendungspaketierung, das den Weg vom Installer zu Intune automatisiert. Der KI-Agent liest das Installationsprogramm, erstellt das Paket und testet es, bevor irgendetwas die Benutzer erreicht, und Administratoren können die Ergebnisse zuerst prüfen.
Mit Splashtop Agentic Packr können Sie:
Installationsprogramme analysieren und Pakete erstellen: Splashtop Agentic Packr analysiert Installationsprogramme automatisch und erstellt ein PSADT-Paket mit der Installationslogik, sodass Admins nicht für jede neue App Installationsskripte schreiben müssen. Da Pakete auf PSADT basieren, können Admins sie bei Bedarf öffnen, prüfen und anpassen.
Vor der Einführung testen: Jedes Paket wird auf einer sauberen virtuellen Maschine getestet und einem Sicherheitsscan unterzogen, um sicherzustellen, dass es wie vorgesehen funktioniert. Admins erhalten vor der Veröffentlichung eine QA-Scorecard und Protokolle zur Überprüfung und haben damit das letzte Wort.
Erkennungsregeln festlegen und Intune-Paketierung einrichten: Splashtop Agentic Packr schreibt Erkennungsregeln, erstellt das Intune-Paket und veröffentlicht es in Intune.
Neue Versionen erkennen: Wenn neue App-Versionen veröffentlicht werden, erkennt Agentic Packr diese und erstellt automatisch aktualisierte Pakete, wodurch IT-Teams noch mehr Zeit sparen.
Zusätzlich können Sie Splashtop Agentic Packr zusammen mit Splashtop AEM (autonomes Endpunktmanagement) verwenden, um die Bereitstellung noch weiter zu verbessern. Splashtop Agentic Packr kann die Pakete erstellen und testen, die Splashtop AEM dann automatisch auf Geräten in einer gesamten Organisation bereitstellen kann.
Weniger Zeit für Switches, mehr Zeit für Rollouts
Jedes EXE-Framework hat seine eigenen Schalter, sein eigenes Neustartverhalten und mehr. Jedes davon zu identifizieren und korrekt zu verwenden, kann unbeaufsichtigte Installationen erschweren, ist aber auch notwendig, um sicherzustellen, dass jede sicher bereitgestellt werden kann.
Splashtop Agentic Packr verwandelt Installer ohne manuelles Scripting in getestete, Intune-fertige Pakete, sodass IT-Teams weniger Zeit für die Recherche und das Testen jeder neuen App und jedes Updates aufwenden müssen.
Möchten Sie sehen, wie Splashtop Agentic Packr Installationsprogramme in getestete, sofort bereitstellbare Pakete verwandeln kann? Erfahren Sie mehr und sehen Sie es noch heute in Aktion.




