Hintergrundinfo Installationsmodi

Wie im Abschnitt Ausführung von Paketen beschrieben, führen Sie ein Paket aus, indem Sie das Executable "Deploy-Application.exe", das sich im Paketverzeichnis befindet, aufrufen.

Sie können festlegen, welcher Installations-Modus verwendet wird, indem Sie über den Kommandozeilen-Parameter "InstallMode" festlegen, wie die Installation ausgeführt werden soll. Wenn Sie den Parameter "InstallMode" nicht angeben, wird als Default-Wert "Install" angenommen. Die Angabe erfolgt im Format "Deploy-Application.exe -InstallMode <Modus>".

Mögliche Werte für InstallMode sind:

  • Install
    Es wird entweder nur der Computerteil (bei nicht-interaktiver Ausführung) oder sowohl Computer- als auch Benutzerteil (bei interaktiver Ausführung) installiert.
  • InstallComputerPart
    Es wird nur der Computerteil installiert.
  • InstallUserPart
    Es wird nur der Benutzerteil installiert (typischerweise über Active Setup).
  • Modify
    Es findet eine Modifikations-Ausführung statt. Im aktuellen Status entspricht das einer normalen Installation.
  • Reinstall
    Es findet eine Reinstallation statt, das Script wird erneut ausgeführt.
  • Repair
    Es findet eine Reparatur-Installation statt. Im aktuellen Status entspricht das einer normalen Installation.
  • Uninstall
    Es wird entweder nur der Computerteil (bei nicht-interaktiver Ausführung) oder sowohl Computer- als auch Benutzerteil (bei interaktiver Ausführung) deinstalliert.
  • Update
    Es findet eine Update-Installation statt. Im aktuellen Status entspricht das einer normalen Installation.


Beginnend mit Version 2.0 kann ein weiterer Kommandozeilenparameter an "Deploy-Application.exe" übergeben werden, der dafür sorgt, dass vom Paketverzeichnis automatisch eine Kopie erzeugt wird. Dieser Parameter wurde eingeführt, da die Microsoft Intune Management Extension nach erfolgreicher Ausführung eines Pakets, den Paket-Cache selbstständig löscht und daher für Pakete mit Benutzerteil dieser nicht ausgeführt werden könnte. 

  • PersistCache
    Das Paket kopiert sich selbst in das Verzeichnis "%ProgramData%\NWC Services\PackageDeployment\PackageCache". Die Active Setup Registry-Werte verweisen dann auf dieses Verzeichnis statt auf das native Paket-Verzeichnis.


In Version 3.0 wurden zwei weitere Kommandozeilenparameter, die an "Deploy-Application.exe" übergeben werden können, eingeführt. Diese sorgen dafür, dass eine Installation, die im Dienst-Kontext ausgeführt wird, in eine interaktive Windows-Sitzung "umgeleitet" wird, indem sie dort neu gestartet wird.

  • RestartInteractive
    Switch-Parameter, der - wenn gesetzt - dafür sorgt, dass der Wert des Parameters "RunInInteractiveSession" zur Ermittlung der aktiven Windows-Sitzung verwendet wird.
  • RunInInteractiveSession
    Alias: RunInSession 
    Vorgabewert: $null
    Mögliche Werte: 
    • $null
    • <leere Zeichenfolge>
    • -1 = ermittle die erste aktive Windows-Sitzung
    • <Zahl> = verwende diese Windows-Sitzung
    • <Prozess-Name> = ermittle die erste aktive Windows-Sitzung dieses Prozesses, wobei "*" zu "explorer" wird, und ein angehängtes "?" alternativ auch nach Explorer-Prozessen sucht.
    • <Zahl>:<Prozess-Name> oder <Prozess-Name>:<Zahl> = ermittle den angegebenen Prozess in der angegebenen Windows-Sitzung.


Anwendungsbeispiele:

  • Deploy-Application.exe                                                                                Die Installation wird in der aktuellen Windows-Sitzung ausgeführt.
  • Deploy-Application.exe -RestartInteractive                                                        Die Installation wird in der ersten aktiven Windows-Sitzung neu gestartet (der Vorgabewert von "RunInInteractiveSession" ist wirksam). Dies ist die übliche Aufrufform.
  • Deploy-Application.exe -RunInInteractiveSession $null                                        Die Installation wird in der ersten aktiven Windows-Sitzung neu gestartet ("RestartInteractive" ist nicht erforderlich).
  • Deploy-Application.exe -RestartInteractive -RunInInteractiveSession notepad?        Die Installation wird in der ersten aktiven Windows-Sitzung eines Notepad- oder Explorer-Prozesses neu gestartet ("RestartInteractive" ist eigentlich überflüssig, stört aber nicht).
  • Deploy-Application.exe -RunInInteractiveSession                                                Es tritt ein Fehler auf, da für "RunInInteractiveSession" ein Wert angegeben werden muss ("RestartInteractive" ist der Switch-Parameter ohne Wert).