Installieren einer App (Win32) mit individuellen Voreinstellungen
Theoretisch lässt sich jede MSI-Datei anpassen. Dazu kann man Tools wie „ORCA“ oder ähnliches verwenden. Letztendlich ist der Trick, eine MST-Datei zu erstellen, die bei der Installation der eigentlichen MSI angegeben wird. In der MST-Datei stehen die Konfigurationen, die während der Installation der MSI angepasst werden sollen.
Zuvor sollte überprüft werden, welche Einstellungen für den Installer mit einer MST-Datei angepasst werden können. Im folgenden Beispiel mit dem Installer für das Tool „Snagit 2022“ vom Hersteller „TechSmith“ gibt es sogar ein eigenes „Deployment Tool“ mit welchem sich eine entsprechende MST-Datei für Snagit erstellen lässt.
Nachdem die MST-Datei vorhanden ist kann diese auch bereits zusammen mit der eigentlichen MSI-Datei über Intune auf die Geräte gepusht werden.
Pushen und installieren der MSI mit der MST-Datei
Um nun beide Dateien (MSI und MST) auf ein Gerät pushen zu können benötigen wir das „Intune App Util“ Programm von Microsoft. Dieses kann hier über Github heruntergeladen werden:
Danach sollte außerdem ein Ordner erstellt werden, in dem sowohl die MSI-Datei als auch die dazugehörige MST-Datei enthalten sind
Die restlichen Dateien können in diesem Bild ignoriert werden. Diese wurden durch das Tool von Snagit zum erstellen der MST automatisch mit erstellt. Wir benötigen diese allerdings nicht. Zum bereitstellen der App sind nur MSI- und MST-Datei relevant.
Danach kann das zuvor heruntergeladene Tool (IntuneWinAppUtil.exe) über die CMD aufgerufen werden. Dazu am besten die CMD als Administrator ausführen und den absoluten Pfrad zur EXE angeben. Danach sollte bereits die erste Abfrage zum Packen der App erscheinen.
Zum Wrappen der App sollten folgende Dinge angegeben werden:
Please specify the source folder:
Den absoluten Pfad zu dem Ordner angeben, in dem sich die MSI- und die MST-Datei befinden
Please specify the setup file:
Den absoluten Pfad zu der MSI-Datei angeben.
Please specify the output folder:
den absoluten Pfad zu dem Ordner angeben, in dem die gewrappte App (*.Intunewin) gespeichert werden soll.
Do you want to specify catalog folder (Y/N)?
Den absoluten Pfad zu der MSI-Datei angeben.
Alle Dateien, die in dem angegebenen „Source Ordner“ abliegen werden in die entstehende „*.intunewin“ Datei gepackt. Dadurch können wir im Endeffeckt auch die MSI- und die MST-Datei mit Intuen auf die Greäte pushen.
Nach einer gewissen Ladezeit sollte im angegebenen „Output folder“ auch die Intunewin-Datei sichtbar sein.
Wenn das der Fall ist kann man zu Intune wechseln und eine neue App erstellen. Hier im ersten Schritt den Typ „Windows-App (Win32)“ auswählen.
Anschließend muss der neuen App in Intune ein Namen und eine Beschreibung vergeben werden. Außerdem muss der Herausgeber eingetragen werden. Die restlichen Einstellungen sind anwendungsspezifisch und daher kann ich diese hier nicht vorgeben. In meinem Beispiel haben die App-Informationen wie folgt ausgesehen:
Im nächsten Schrit (den Programm Details) werden Dinge wie der Installations- und Deinstallationsbefehl angegeben. Dabei ist der Installationsbefehl der Schlüssel zum Erfolgt beim Installieren einer Anwendung (MSI-Datei) mit der entsprechenden Konfigurationsdatei (MST-Datei). Im Installationsbefehl wird nämlich sowohl der Installer angegeben als auch die dazugehörige Konfigurationsdatei. Der genaue Installationsbefehl kann nach folgendem Schema verwendet werden:
msiexec.exe /I "MSIFILE.msi" TRANSFORMS="MSTFILE.mst" /quiet /norestart
Der Wert „MSIFILE.msi“ muss dabei logischerweise durch den Namen der am Anfang gewrappten MSI-Datei ersetzt werden. Und dem entsprechend auch der Wert „MSTFILE.mst„. Dieser muss durch den Namen der dazu-gepackten MST-Datei ersetzt werden.
Beispiel:
msiexec.exe /I „snagit.msi“ TRANSFORMS=“snagit.mst“ /quiet /norestart
Der Deinstallationsbefehl wird bei MSI-Dateien in der Regel automatisch anhand der MSI-ID erkannt und direkt hinzugefügt. Alternativ kann diese MSI-ID über verscheidene Wege herausgefunden werden. Der Deinstallationsbefehl setzt dich dann wie folgt zusammen:
msiexec /x "{MSI-ID}" /qn
In meinem Fall sahen die Einstellungen zur Anwendung dann wie folgt aus:
Danach müssen noch die üblichen Dinge zum Pushen einer Win32-App mit Intune angegeben werden.
Dazu gehören Betriebssystemarchitektur, Mindestens erforderliches Betriebssystem, Erforderlicher Speicherplatz, etc.
Im Anschluss darauf folgt dann noch die Erkennungsregel für das neue Programm. Mit MSI-Dateien wir in der Regel ebenfalls die MSI-ID („MSI-Produktcode“) verwendet:
Zu guter Letzt muss die neue App nur noch zugewiesen werden und schon sollte sie nach und nach auf den zugewiesenen Computern installiert werden.
Das Pushen der App + Konfiguration aus Client-Sicht:
Sobald die neue Anwendung in Intune den Geräten zugewiesen wurde und die entsprechenden Clients in Intune einchecken erhalten Sie auf dem Computer eine Meldung:
Sobald diese Meldung erscheint wird das Programm im Hintergrund heruntergeladen. Die geladenen Dateien werden in folgendem Ordner gespeichert.
C:\Program Files (x86)\Microsoft Intune Management Extension\Content\Incoming
Sobald die Daten dann vollständig heruntergeladen wurden befinden sich die Dateien ZIP-komprimiert im Ordner:
C:\Program Files (x86)\Microsoft Intune Management Extension\Content\Staging
In der heruntergeladenen ZIP-Datei befinden sich nach dem vollständigen Download dann alle Dateien, die zu Beginn dieser Anelitung mit dem Programm „IntuneAppUtil“ gepackt wurden. Darunter befinden Sich dann auch die MSI-Datei und die dazugehörige MST-Datei.
Kurze Zeit später wird dann durch Intune der angegebene Installationsbefehl angegeben. Die App wird installiert.
Ein Detailliertes Log dazu findet man Client-Seitig in folgendem Verzeichnis:
C:\ProgramData\Microsoft\IntuneManagementExtension\Logs\
Dort befindet sich die Datei „IntuneManagementExtension.log“
Nach wenigen bis einigen Minuten sollte dann folgende Meldung erscheinen (sofern diese nicht über Intune deaktiviert wurde).