Parametrar för tyst installation: MSI, NSIS, Inno
De flesta installationsprogram för Windows kan köras helt utan fönster. Vilken parameter som gäller beror på verktyget som installationsprogrammet byggdes med, så första steget är att ta reda på vilket det är.
Ta reda på typen av installationsprogram
Varje programsida på ExeAtlas anger installationstypen för varje fil (MSI, NSIS, Inno Setup, WiX, MSIX …). Annars visar ”winget show” den, under Egenskaper → Information står ofta verktyget, och många installationsprogram skriver ut sina parametrar när de startas med /? från en kommandotolk.
winget show --id VideoLAN.VLC.\setup.exe /?MSI (Windows Installer)
msiexec installerar MSI-paket. /qn visar inget gränssnitt alls, /norestart förhindrar automatisk omstart och /l*v skriver en utförlig logg. Egenskaper som INSTALLDIR kan anges på samma rad om paketet stöder dem. För avinstallation används paketets ProductCode, ett GUID som visas på sidan om tyst installation för varje program.
msiexec /i app.msi /qn /norestart /l*v "%TEMP%\app-install.log"msiexec /x {PRODUCT-CODE-GUID} /qn /norestartNSIS
Installationsprogram som byggts med NSIS (Nullsoft) tar /S, och skiftläget spelar roll. /D anger installationsmappen; den måste stå sist och skrivs utan citattecken, även om sökvägen innehåller mellanslag. Avinstallationsprogrammet, oftast uninstall.exe i programmappen, tar också /S.
setup.exe /Ssetup.exe /S /D=C:\Program Files\App"C:\Program Files\App\uninstall.exe" /SInno Setup
/VERYSILENT döljer alla fönster, /SUPPRESSMSGBOXES svarar på meddelanderutor med standardvalet, /NORESTART förhindrar omstart och /SP- hoppar över frågan ”Detta kommer att installera …”. /DIR anger mappen och /LOG skriver en logg. Inno-avinstallationsprogram (unins000.exe) tar samma parameter /VERYSILENT.
setup.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /SP-setup.exe /VERYSILENT /DIR="C:\Apps\App" /LOG="%TEMP%\app.log""C:\Program Files\App\unins000.exe" /VERYSILENT /NORESTARTWiX Burn-paket och InstallShield
Paket som byggts med WiX-verktygen (Burn) tar /quiet, /norestart och /log. InstallShield-installationer som innehåller en MSI skickar vidare MSI-parametrarna via /v; citattecknen är en del av syntaxen.
setup.exe /quiet /norestart /log "%TEMP%\bundle.log"setup.exe /s /v"/qn /norestart"MSIX och APPX
MSIX- och APPX-paket installeras utan dialogruta via PowerShell, för den aktuella användaren. De tas bort med Remove-AppxPackage och det fullständiga paketnamnet.
Add-AppxPackage -Path .\App.msixGet-AppxPackage *AppName* | Remove-AppxPackageKontrollera resultatet
Ett tyst installationsprogram returnerar en slutkod: 0 betyder att det lyckades, 3010 att det lyckades men kräver omstart, och 1641 att installationsprogrammet startade om datorn. I PowerShell startar du installationsprogrammet med -Wait och läser av koden.
$p = Start-Process .\setup.exe -ArgumentList "/S" -Wait -PassThru$p.ExitCodeVanliga frågor
Varför visar installationsprogrammet ändå ett fönster?
Parametern hör till en annan typ av installationsprogram, eller så startar programmet en separat installation (till exempel en runtime) med egna parametrar. Kontrollera typen först; för EXE-filer som innehåller en MSI måste MSI-parametrarna skickas vidare.
Kräver en tyst installation administratörsbehörighet?
Ja, för installationsprogram som skriver till Program Files eller HKLM. Kör kommandot från en kommandotolk med administratörsbehörighet, eller distribuera det med ett verktyg som körs som SYSTEM, till exempel Intune eller Configuration Manager.