Doorgaan naar de hoofdinhoud
Splashtop20 years of trust
AanmeldenTest Gratis
+31 (0) 20 888 5115AanmeldenTest Gratis
Two coworkers typing code on their computers.

Stille installatie van EXE: hoe je de juiste switches vindt en gebruikt

15 minuten leestijd
Bijgewerkt
Ga aan de slag met Splashtop
Hoogwaardige oplossingen voor remote access, remote support en endpointmanagement.
Gratis proefperiode

Met silent installs kun je applicaties en updates op apparaten uitrollen zonder gebruikers te onderbreken of van elke medewerker te vragen deze handmatig goed te keuren en te installeren. IT-teams kunnen echter tegen problemen aanlopen wanneer ze een silent install proberen uit te voeren via een EXE-installer.

MSI-installers delen een reeks silent switches via msiexec, wat silent-installatieopdrachten makkelijker uit te rollen maakt, maar EXE-installers missen die consistentie. De switch verschilt afhankelijk van de tool waarmee de installer is gebouwd, dus waar de opdracht /S bij de ene EXE kan werken, doet die bij de volgende mogelijk helemaal niets. De switches in deze handleiding werken op dezelfde manier in Windows 10 en Windows 11.

Met dat in gedachten gaan we dieper in op silent install EXE-opdrachten, enkele veelgebruikte switches, hoe je het installerframework identificeert en hoe je silent installs afhandelt en de obstakels die daarbij kunnen optreden.

Veelgebruikte schakelaars om EXE-bestanden stil te installeren

Welke silent install-switch je nodig hebt, hangt af van het framework waarmee de EXE is gebouwd. Hoewel er verschillende varianten bestaan, is het mogelijk om het installer-framework en de silent install-opdracht al vroeg te identificeren.

Veelvoorkomende switches voor stille installaties zijn:

Installatieframework

Opdracht voor stille installatie

Opmerkingen

InstallShield (Basic MSI)

setup.exe /s /v"/qn"

/v geeft opties door aan msiexec

InstallShield (InstallScript)

setup.exe /s

Vereist een opgenomen antwoordbestand (setup.iss)

Inno Setup

setup.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART

/SILENT toont nog steeds een voortgangsvenster

NSIS (Nullsoft)

setup.exe /S

Hoofdlettergevoelig: /s werkt niet

WiX Burn bundle

setup.exe /quiet /norestart

Voer de bundle uit met /? om de opties te controleren

Advanced Installer EXE

setup.exe /exenoui /qn

/exenoui verbergt de UI van de EXE-wrapper

Zelfs als je je silent install-switch hebt gevonden, moet je die eerst testen voordat je probeert deze op meerdere apparaten uit te rollen. Een verkeerde switch kan ervoor zorgen dat een installatie blijft hangen op een prompt die niemand kan zien, dus een test op één machine is de tijd waard.

Stap 1: Bepaal welk hulpprogramma het installatieprogramma heeft gemaakt

Voordat je iets anders doet, wil je eerst bepalen welk framework het installatieprogramma gebruikt. Een EXE-installatieprogramma is doorgaans een wrapper die is gebouwd met een packagingtool, zoals InstallShield, NSIS of Advanced Installer. Elke tool heeft zijn eigen switches, dus als je die identificeert, kun je de opties beperken tot een of twee.

Je kunt de tool op een paar manieren identificeren:

  • Voer het installatieprogramma uit met /? of /help: Een helpvenster is vaak de makkelijkste manier om de tool te identificeren, omdat veel installatieprogramma's hun opties vermelden of de tool een naam geven. De WinGet-documentatie van Microsoft raadt aan een installatieprogramma uit te voeren met -? om de silent switches te achterhalen.

  • Kijk naar de installatiewizard: De installatiewizard kan vaak de naam van de packagingtool vermelden. Je kunt deze normaal starten en vervolgens de titelbalk, branding of Over-tekst controleren om te zien of die daar wordt vermeld. Zorg ervoor dat je annuleert voordat je installeert, want er zijn nog een paar stappen die je eerst wilt volgen.

  • Controleer het WinGet-manifest van de app. Als de app zich in de communityrepository van Windows Package Manager bevindt, kun je de manifestrecords controleren. Dit bevat vaak een installatortype, zoals Inno, Nullsoft, WiX, Burn of MSI.

Als geen van deze methoden werkt, kun je de implementatiedocumentatie van de leverancier raadplegen voor meer informatie.

Stap 2: Zoek de silent install-switches voor de EXE

Vervolgens moet je uitzoeken wat de silent install-switches zijn. Je kunt dit op een paar manieren aanpakken, waaronder:

Bekijk de implementatiedocumentatie van de leverancier

Leveranciers bieden vaak silent install-opties, vooral als ze enterprise-implementatie ondersteunen. Door de documentatie te raadplegen, kun je vaak direct de silent install-switch vinden, dus dat zou de eerste plek moeten zijn waar je kijkt. In de documentatie staat vaak welke switch je nodig hebt en mogelijk ook welke aangepaste opties de leverancier heeft toegevoegd, zoals licentiesleutels of functieselectie.

Lees de help-uitvoer van het installatieprogramma

Als de documentatie niet duidelijk is, kun je de help-uitvoer van het installatieprogramma controleren. Doe dit door de EXE uit te voeren met /? of /help vanuit een opdrachtprompt. Als er een venster met gebruiksinformatie verschijnt, zou daarin een lijst met ondersteunde opties moeten staan. Als het geen help-uitvoer heeft, moet je de installatie annuleren en een andere methode proberen.

Zoek het WinGet-manifest van de app op

Als een app in de communityrepository van WinGet staat, moet die stille installatie ondersteunen. Je kunt in de winget-pkgs -repository op GitHub zoeken om het installatortype en de geregistreerde stille schakelaars voor die app te vinden.

Probeer Universal Silent Switch Finder als laatste redmiddel

Als niets anders werkt, is Universal Silent Switch Finder een gratis legacy-hulpprogramma dat een EXE inspecteert en een switch voor het installertype ervan voorstelt. Het heeft echter beperkingen: de oorspronkelijke site is niet langer beschikbaar en het kan geen switches vinden voor aangepaste installers die geen gebruikmaken van een bekend framework. Dus als je het moet gebruiken, zorg er dan voor dat je het downloadt van een betrouwbare bron en de voorgestelde opdracht test.

Silent install-switches per installerframework

Laten we nu eens kijken naar enkele silent install-switches die je kunt tegenkomen. Als je weet welk type installerframework je gebruikt, kun je gemakkelijker bepalen welke installatieswitches je nodig hebt, dus deze lijst kan het makkelijker maken om die switches te vinden:

Stille installatie van InstallShield

De InstallShield-methode voor silent install kan afhangen van het projecttype waarmee de setup.exe is gebouwd. Dit omvat:

  • Standaard MSI-projecten: Deze voeren setup.exe /s /v"/qn" uit zonder een responsebestand te gebruiken. Er is geen spatie toegestaan tussen /v en de waarde ervan, dus /v"/qn" werkt, maar /v "/qn" niet. Je kunt ook MSI-eigenschappen doorgeven binnen de aanhalingstekens van /v, bijvoorbeeld: setup.exe /s /v"/qn INSTALLDIR=D:\Destination".

  • InstallScript- en InstallScript MSI-projecten: Hiervoor heb je een responsebestand nodig. Voer setup.exe /r één keer uit om je antwoorden vast te leggen in een setup.iss -bestand, en voer daarna setup.exe /s uit om die stil af te spelen. Hiervoor gebruik je /f1 om het pad naar het responsebestand in te stellen en /f2 om het logpad in te stellen, waarbij beide absolute paden moeten zijn.

Inno Setup

Voor Inno kun je de opdracht /SILENT gebruiken om de wizard te verbergen maar nog wel een voortgangsvenster te tonen, of /VERYSILENT om alles te verbergen. Je kunt ook meldingsvensters onderdrukken met /SUPPRESSMSGBOXES of automatische herstarts voorkomen met /NORESTART.

Een stille installatie met Inno kan er bijvoorbeeld zo uitzien: setup.exe /VERYSILENT /SUPPRESSMSGBOXES /NORESTART /LOG="C:\Logs\app.log".

Houd er rekening mee dat sommige berichtvensters niet kunnen worden onderdrukt en dat /DIR= een volledig gekwalificeerd pad nodig heeft om te werken.

NSIS (Nullsoft)

Met Nullsoft kun je de opdracht /S gebruiken om een silent install uit te voeren. Houd er rekening mee dat NSIS-opties hoofdlettergevoelig zijn, dus de S moet een hoofdletter zijn. Je kunt de installatiemap instellen met /D= als laatste optie zonder aanhalingstekens (zelfs als het pad spaties bevat).

Je kunt bijvoorbeeld setup.exe /S /D=C:\Program Files\App uitvoeren.

Makers van installatieprogramma's kunnen deze standaarden overschrijven, dus als de documentatie van een leverancier andere opdrachten geeft, wil je die gebruiken.

WiX Burn-bundels

Burn-bundels zijn EXE-bestanden die meerdere pakketten, meestal MSI's, aan elkaar koppelen. Voer de bundel altijd uit met /? om de opties te controleren, want die kunnen worden aangepast.

Een WiX Burn-bundel kan er bijvoorbeeld zo uitzien: setup.exe /quiet /norestart /log C:\Logs\app.log.

Advanced Installer EXE's

Advanced Installer EXE's kunnen /exenoui gebruiken om de interface van de wrapper te verbergen, gevolgd door msiexec -opties om de opdracht toe te passen op de MSI binnenin. Dit kan er ongeveer zo uitzien: setup.exe /exenoui /qn /norestart.

Een EXE stil installeren vanaf de opdrachtregel en met PowerShell

De opdrachtregel en PowerShell zijn twee van de meest gebruikelijke manieren om een EXE te installeren. Als je een stille installatie wilt uitvoeren, kun je dat doen door een paar eenvoudige stappen te volgen:

Vanuit de opdrachtprompt

Om een EXE stil te installeren via de opdrachtregel, voer je de opdrachtprompt uit als administrator wanneer de installatie voor alle gebruikers geldt. Ga daarvandaan naar de map van het installatiebestand en voer de EXE uit met de bijbehorende switches. Zet het pad altijd tussen aanhalingstekens als het spaties bevat.

Houd er rekening mee dat sommige setup.exe -bestanden worden doorgegeven aan een tweede proces en terugkeren naar de prompt voordat de installatie is voltooid. In deze gevallen wil je start /wait gebruiken, zodat de prompt wacht tot de installatie is voltooid. InstallShield Basic MSI-setups accepteren ook /w.

Vanuit PowerShell

Als je PowerShell gebruikt, kun je Start-Process gebruiken met -ArgumentList, -Wait en -PassThru, en vervolgens de exitcode uitlezen uit het geretourneerde procesobject. Microsoft raadt aan om alle argumenten door te geven als één enkele tekenreeks voor ArgumentList, inclusief eventuele vereiste aanhalingstekens.

Een PowerShell-opdracht kan er bijvoorbeeld ongeveer zo uitzien:

$p = Start-Process -FilePath "C:\Installers\setup.exe" -ArgumentList "/VERYSILENT /SUPPRESSMSGBOXES /NORESTART" -Wait -PassThru

$p.ExitCode

Regel herstarts en afsluitcodes voordat je implementeert

Voor veel updates of installaties is een herstart nodig om ze succesvol te voltooien. Stille installaties kunnen dit echter ingewikkelder maken. Als een stille installatie de computer van een gebruiker midden op de werkdag opnieuw opstart, kan dat onderbrekingen veroorzaken. Tegelijkertijd kan het ook problemen veroorzaken als de installatie meldt dat deze geslaagd is terwijl het apparaat nog opnieuw moet worden opgestart, en kunnen wachtende updates ten onrechte als voltooid worden gemarkeerd.

Dit brengt ons bij exitcodes. Een exitcode is het nummer dat een installer teruggeeft wanneer die is voltooid, en dat scripts en implementatietools uitlezen om te bepalen of de installatie is geslaagd, mislukt of een herstart nodig heeft. Deze codes zijn gestandaardiseerd voor op MSI gebaseerde installaties (0 voor succes en 3010 voor succes waarbij een herstart vereist is), maar kunnen verschillen per EXE-framework.

Er zijn een paar belangrijke punten om in gedachten te houden bij het omgaan met herstarts en exitcodes:

  • Inno Setup kan zonder waarschuwing opnieuw opstarten: Als een herstart nodig is en /NORESTART niet wordt gebruikt, toont de opdracht /SILENT nog steeds de prompt "Nu opnieuw opstarten?", terwijl /VERYSILENT de machine opnieuw opstart zonder iets te vragen. Je doet er goed aan /VERYSILENT te combineren met /NORESTART om te zorgen dat de installatie zonder onderbreking verloopt, al moeten gebruikers nog steeds opnieuw opstarten als de installatie dat vereist.

  • Inno Setup geeft 0 terug, zelfs wanneer een herstart nodig is: Soms wordt een installatie als voltooid gemeld, ook al is er nog een herstart nodig. Je kunt /RESTARTEXITCODE=3010 aan de opdracht toevoegen, zodat je implementatietool kan zien wanneer een herstart in behandeling is.

  • InstallShield Basic MSI- en Advanced Installer-installaties geven msiexec -opties door via: Door /norestart toe te voegen binnen het msiexec -gedeelte van de opdracht kun je herstarts onderdrukken, zodat het apparaat niet onverwacht opnieuw opstart terwijl de gebruiker aan het werk is.

  • Test de exitcode op één machine. Zorg ervoor dat je de opdracht test voordat je de update uitrolt. Voer de opdracht uit vanuit PowerShell, lees de exitcode en bevestig wat die retourneert bij succes en bij een wachtende herstart voordat je je deploymenttool configureert.

In Intune komen exitcodes overeen met typen retourcodes, en wat elke code doet hangt af van de instelling voor apparaatherstart van de app. Met ‘Determine behavior based on return codes’ start een hard reboot-code het apparaat onmiddellijk opnieuw op, terwijl een soft reboot-code de gebruiker laat weten dat een herstart nodig is. Zorg er daarom voor dat de code die je installer retourneert overeenkomt met wat Intune verwacht.

Veelvoorkomende problemen met stille EXE-installaties oplossen

Je kunt tegen enkele problemen of moeilijkheden aanlopen wanneer je een silent install probeert uit te voeren. Veelvoorkomende problemen met silent installs van EXE-bestanden zijn:

De installer negeert de silent-switch

Als het installatieprogramma de silent switch negeert, kan dat betekenen dat de switch bij een ander framework hoort of dat het hoofdlettergebruik onjuist is. Controleer daarom goed de documentatie van de leverancier, bevestig het framework en zorg ervoor dat alles correct is gespeld. NSIS accepteert bijvoorbeeld alleen een hoofdletter /S, dus als je was vergeten die met een hoofdletter te schrijven, maakt dat wel degelijk verschil.

De installatie loopt vast en wordt nooit voltooid

Soms betekent het, als de installatie niet wordt voltooid, dat deze wacht op invoer die niemand kan zien. Als een Intune-installatie bijvoorbeeld langer wacht dan de time-out (standaard 60 minuten), wordt die als mislukt gemarkeerd. Veelvoorkomende oorzaken zijn een paar Inno Setup-meldingsvensters die /SUPPRESSMSGBOXES niet kan verbergen, en InstallShield-vereisten die /s niet stil maakt.

De installatie mislukt wanneer een pad spaties bevat

Dit is nog zo'n geval waarin een typefout in de opdracht het verschil kan maken. Frameworks hebben vaak verschillende regels voor aanhalingstekens, en het gebruik van het verkeerde type aanhalingstekens of spaties kan ervoor zorgen dat een installatie mislukt. NSIS gebruikt bijvoorbeeld /D=, dat als laatste moet komen en geen aanhalingstekens mag gebruiken, zelfs niet als het pad spaties bevat, terwijl InstallShield escaped quotes nodig heeft binnen de waarde van /v.

Er is geen logbestand dat laat zien wat er misging

Wat als er iets misgaat en er geen duidelijke aanwijzing is waarom? Als je logging niet hebt ingeschakeld voordat je ging testen, kun je de oorzaak mogelijk niet achterhalen. Zorg ervoor dat je logging inschakelt voordat je test en koppel de logs aan een bestaande map. Hierbij wordt de opdracht /LOG="path" gebruikt voor Inno Setup, /debuglog"path" voor InstallShield setup.exe, en /log voor WiX Burn-bundels.

De EXE heeft geen optie voor stille installatie

Sommige EXE's bieden helemaal geen optie voor een stille installatie. Controleer in dat geval of de leverancier een MSI-versie van het installatieprogramma aanbiedt die standaard silent switches ondersteunt. Als dat niet zo is, moet je de EXE mogelijk opnieuw verpakken, en daarvoor is wat specialistisch werk nodig.

Implementeer een stille EXE-installatie met Microsoft Intune

Als je Microsoft Intune gebruikt, zijn er een paar Win32-appinstellingen die je goed moet instellen wanneer je een stille EXE-installatie uitrolt. Intune zet EXE's uit als Win32-apps, waarbij het installatieprogramma en ondersteunende bestanden worden verpakt in een .intunewin bestand. Het bestand wordt vervolgens geüpload met een installatieopdracht, verwijderopdracht en detectieregels. Omdat Intune geen interactieve installaties ondersteunt, moet de installatieopdracht volledig stil zijn.

Deze opdrachten omvatten:

  • Installatieopdracht: de naam van de EXE gevolgd door de silent switches, zoals getest. Houd er rekening mee dat Intune ook een PowerShell-script kan accepteren in plaats van een opdrachtregel.

  • Deïnstallatieopdracht: wanneer en hoe je de applicatie deïnstalleert. Houd er rekening mee dat omgevingsvariabelen hier niet worden uitgebreid, dus je kunt het beste een wrapper-script gebruiken als de deïnstallatie die nodig heeft.

  • PowerShell in opdrachtvelden: als een opdracht powershell.exe aanroept, Intune start de 32-bitsversie van PowerShell, die Windows omleidt naar 32-bits systeemmappen. Gebruik in plaats daarvan %SystemRoot%\Sysnative\WindowsPowerShell\v1.0\powershell.exe om 64-bits PowerShell uit te voeren.

  • Installatiegedrag: wanneer je het installatiegedrag instelt, kies je het best System voor installaties die beheerdersrechten vereisen. Als een installatie in gebruikerscontext beheerdersrechten vereist die de gebruiker niet heeft, mislukt deze.

  • Time-out: Intune wacht standaard 60 minuten voordat de installatie als mislukt wordt gemarkeerd, maar dit kan worden aangepast tot maximaal één dag.

  • Retourcodes: Intune voegt standaardcodes toe wanneer je de app maakt. Je kunt aangepaste codes toevoegen die je installer retourneert, zoals de waarde /RESTARTEXITCODE die is ingesteld voor Inno Setup. Met een herhaalcode laat je Intune drie keer proberen, waarbij er vijf minuten tussen elke poging zit.

  • Detectieregels: er is ten minste één regel vereist, zodat Intune kan bevestigen dat de app is geïnstalleerd. Zorg ervoor dat je een bestands-, register- of scriptregel gebruikt, aangezien EXEs geen MSI-productcode hebben.

Waarom silent installs van EXE's lastig worden in een appcatalogus

Op dit punt kan het voelen alsof EXE silent installs complexer zijn dan nodig. Voor elke EXE moet het framework worden vastgesteld, moeten de switches worden bevestigd, moeten het gedrag van herstarts en exitcodes worden getest, moeten detectieregels worden geschreven, enzovoort. En als er dan een nieuwe update uitkomt, begint het proces weer van voren af aan.

Herhaal dit voor elke afzonderlijke app, en onderzoek en testen kunnen al snel een flinke werklast worden.

AI-gestuurde verpakkingstools kunnen een groot deel van dat werk overnemen, zelfs in grote omgevingen.

Splashtop Agentic Packr is een AI-aangedreven tool voor applicatieverpakking die het traject van installer naar Intune automatiseert. De AI-agent leest het installatiebestand, bouwt het pakket en test het voordat er iets bij gebruikers terechtkomt, en beheerders kunnen de resultaten eerst bekijken.

Met Splashtop Agentic Packr kun je:

  • Installers analyseren en pakketten bouwen: Splashtop Agentic Packr analyseert installers automatisch en bouwt een PSADT-pakket met de installatielogica, zodat admins niet voor elke nieuwe app installatiescripts hoeven te schrijven. Omdat pakketten zijn gebouwd op PSADT, kunnen admins ze openen, beoordelen en indien nodig aanpassen.

  • Test vóór uitrol: Elk pakket wordt getest op een schone virtuele machine en beveiligingsgescand om te garanderen dat het werkt zoals bedoeld. Beheerders ontvangen een QA-scorecard en logs om te controleren vóór publicatie, zodat zij het laatste woord hebben.

  • Stel detectieregels en Intune-packaging in: Splashtop Agentic Packr schrijft detectieregels, bouwt het Intune-pakket en publiceert het naar Intune.

  • Nieuwe versies detecteren: Wanneer nieuwe appversies worden uitgebracht, detecteert Agentic Packr deze en bouwt automatisch bijgewerkte pakketten, waardoor IT-teams nog meer tijd besparen.

Daarnaast kun je Splashtop Agentic Packr gebruiken met Splashtop AEM (Autonomous Endpoint Management) om de uitrol nog verder te verbeteren. Splashtop Agentic Packr kan de pakketten bouwen en testen, waarna Splashtop AEM ze automatisch kan uitrollen op apparaten in de hele organisatie.

Besteed minder tijd aan switches en meer aan uitrol

Elk EXE-framework heeft zijn eigen switches, herstartgedrag en meer. Het identificeren van elk daarvan en ze correct instellen kan silent installs lastig maken, maar het is ook nodig om ervoor te zorgen dat ze allemaal veilig kunnen worden uitgerold.

Splashtop Agentic Packr zet installers om in geteste, voor Intune geschikte pakketten zonder handmatige scripting, zodat IT-teams minder tijd kwijt zijn aan het onderzoeken en testen van elke nieuwe app en update.

Wil je zien hoe Splashtop Agentic Packr installatieprogramma's kan omzetten in geteste, implementatieklare pakketten? Lees meer en zie het vandaag nog in actie.

Stop met apps handmatig te verpakken
Laat Splashtop Agentic Packr elke app en update voor Intune bouwen, testen en publiceren. Je team controleert de resultaten en apparaten blijven up-to-date zonder handmatig scriptwerk.
Zie Agentic Packr in actie


Delen
RSS FeedAbonneren

Veelgestelde vragen

Hoe installeer ik stilzwijgend een EXE-bestand?
Hoe vind ik de silent install-switches voor een EXE?
Hoe installeer ik stilletjes een EXE via de opdrachtregel?
Hoe installeer ik stilzwijgend een EXE met PowerShell?
Hoe maak ik een pakket voor een stille installatie van een EXE?

Verwante content

A man working on a computer with code on-screen in an office.
Agentgestuurde appverpakking

Een stille installatie uitvoeren met msiexec: opdrachten en schakelaars

Meer informatie
A man typing on a computer in an office.
Agentgestuurde appverpakking

Wat is AI-applicatiepackaging? Hoe agentic packaging werkt

A person working at their computer.
Agentgestuurde appverpakking

Waarom trage app-packaging in Intune apps van derden kwetsbaar laat

Bekijk alle blogs