You searched for Software ohne msi - Workplace Management Blog https://www.wpm-blog.de/ ... ideas and solutions making workplace management easier Sun, 24 Nov 2024 17:07:34 +0000 de hourly 1 https://wordpress.org/?v=6.1.7 Empirum WinPE Paket – DriverIntegration Ersatz https://www.wpm-blog.de/empirum-winpe-paket-driverintegration-ersatz/ https://www.wpm-blog.de/empirum-winpe-paket-driverintegration-ersatz/#comments Tue, 01 Jan 2019 13:51:56 +0000 https://www.wpm-blog.de/?p=2132 Das Empirum WinPE Paket, das ich hier vorstelle ist dazu gedacht das Matrix42 Paket „DriverIntegration“ zu ersetzen. Mein Paket heißt PrepareDRVbyModel_Packages, da mein erstes WinPE Paket die Treiber aus der EmpInst Verzeichnis Struktur holt. Was … Weiterlesen

Der Beitrag Empirum WinPE Paket – DriverIntegration Ersatz erschien zuerst auf Workplace Management Blog.

]]>
Das Empirum WinPE Paket, das ich hier vorstelle ist dazu gedacht das Matrix42 Paket „DriverIntegration“ zu ersetzen. Mein Paket heißt PrepareDRVbyModel_Packages, da mein erstes WinPE Paket die Treiber aus der EmpInst Verzeichnis Struktur holt. Was macht das originale Matrix42 DriverIntegration Paket? Es sucht in einer drivers.ini nach dem Hersteller und Model und kopiert abhängig davon die Treiber nach C:\EmpirumAgent\Drivers. In diesem Verzeichnis sucht die automatisierte Windows Installation (WindowsInstallation Paket) nach nicht bekannten Treibern. Dies kann man in der unattend.xml im WindowsInstallation Paket Verzeichnis sehen. Jetzt kommt wahrscheinlich der längste Beitrag, den ich bis dato geschrieben habe …

PrepareDRVbyModel_Packages

Mein Ersatz bietet (meines Erachtens:)) einige Vorteile und weicht in den nachfolgenden Punkten von dem Matrix42 Grundgedanken ab:

  • es ist „gesprächiger“ und man kann eher nachvollziehen, was es macht (siehe Screenshots am Ende des Beitrages)
  • der Ablageort der Treiber kann angepasst werden vom Standard: Empirum\Configurator\Packages\Matrix42\OsPackages\Drivers
  • der Ablageort der Drivers.ini kann angepasst werden vom Standard: Empirum\Configurator\Packages\Matrix42\OsPackages\Drivers
  • es kann festgelegt werden, ob die WinPE Installation weitergehen soll, auch wenn kein Eintrag in der drivers.ini, Treiber, etc. gefunden wurde.

Übersicht dieses Beitrages

  • Import der OS-Packages
  • Kurze Einführung: Hardware Model zu Treiber/Software Zuordnung per drivers.ini
  • Möglichkeiten mit PrepareDRVbyModel_Packages
  • Einführung PostOSInstallation Paket
  • Download
  • Fehlersuche
  • Screenshots

Import der OS-Packages

Zuerst ist es notwendig, die zusätzlichen OS-Package über das Software-Depot zu importieren. Danach muss die Reihenfolge arrangiert werden, damit die richtige Abarbeitung während der OS-Installation gewährleistet ist:

  • <WinPE-D-2PXE> (optional aber empfohlen)
  • DiskPartitioning
  • <PrepareDRVbyModel_Packages>
  • WindowsInstallation
  • PxeOffAndReboot
  • DomainJoin
  • <PostOSInstallation> (optional aber empfohlen)
  • EmpirumAgentSetup

Hardware Model zu Treiber/Software Zuordnung

Die Zuordnung Model zu Treiber geschieht wie bei dem Paket der Matrix42 über die drivers.ini Datei. Diese ist im Standard unter Empirum\Configurator\Packages\Matrix42\OsPackages\Drivers abgelegt.

Aufbau der Drivers.ini
[<WMI Manufacturer>]
<WMI Model>=<Ordner, *.ZIP, *.cab unterhalb von Empirum\Configurator\Packages\Matrix42\OsPackages\Drivers>

z.B.
[Dell Inc.]
OptiPlex 7010=DellOptiplex7010
;alternativ OptiPlex 7010=DellOptiplex7010.zip
;alternativ OptiPlex 7010=DellOptiplex7010.cab

Möglichkeiten mit PrepareDRVbyModel_Packages

Nachfolgend sind die Möglichkeiten erläutert, die sich aufgrund der Anpassung und Erweiterung ergeben. Diese Möglichkeiten können über die Variablen in der Management Console gesteuert werden. Die aufgeführten Variablen sind alle unter der Variablen Sammlung „PrepareDRVbyModel_Packages“ zu finden.

DriversAreMandatory:
Das Matrix42 Paket drehte sich bis vor kurzem solange in der Schleife bis ein Treiber in der drivers.ini gefunden wurde.
Dies ist für eine produktive Umgebung, den Dienstleister etc. gut so.
Wenn man jedoch einen Computer ohne spezifische Treiber installieren will (zum Test), dann muss man im Matrix42 Falle einen drivers.ini Eintrag erzeugen mit einem Verweis auf ein leeres Verzeichnis.
Dieses Verhalten wurde mit dem DriverIntegration 2.6 Pakete verändert – man kann es jedoch nicht steuern.

Variablenwerte:
0, WinPE fährt mit der WindowsInstallation fort, auch wenn kein Treiber in der drivers.ini gefunden wurde.
1, Matrix42 Standardverhalten – das System läuft in der Schleife und führt die WindowsInstallation nicht fort.
Somit kann man für eine produktive Struktur (Konfigurationsgruppe) sicherstellen, dass die Installation nur mit bekannten Hardware-Typen durchgeführt wird.

DriversRootPath:
Die Idee, den DriversRootPath anpassbar zu machen, hatte mehrere Gründe:
Selektive Synchronisation der Treiber: Hiermit kann man die Treiber direkt unter Packages\Drivers ablegen und mit einem angepassten „ESubDepot_Packages“ SyncJob diese für bestimmte Standorte auslassen und mit einem selbsterstellten ESubDepot_PackagesDrivers diese separat synchronisieren lassen.
Treiber-Update Softwarepakete: Durch eine Erweiterung der Ablage um eine Setup.inf, DPInst.exe und xml kann man eine Aktualisierung der Treiber auf bestehenden Systemen durchführen und mass dazu die Treiber nicht mehrmals ablegen. Dies werde ich in einem späteren Beitrag nochmals aufgreifen.

Variablenwerte:
„leer“ bedeutet Matrix42 Standardwert:Matrix42\OsPackages\Drivers, das entspricht Empirum\Configurator\Packages\Matrix42\OsPackages\Drivers
Kommentar:
Hinweis: Man kann in der drivers.ini auch Teilpfade angeben.
Für eine Kopie eines Ordners zum Beispiel: OptiPlex 7010=Dell\Optiplex7010\1.0\PNP
Für die Nutzung einer ZIP Datei zum Beispiel: OptiPlex 7010=Dell\Optiplex7010\1.0\PNP\Optiplex7010.zip
Wichtig: Der Pfad wird ab dem Packages Ordner angegeben!

DriversINIPath:
Die Idee hierbei war, dass man eine zweite drivers.ini Datei, unabhängig von einer produktiv genutzten, einsetzen kann.
Darin kann man Einträge für eine bekannte Hardware auf einen anderen Pfad, ZIP, etc. setzen und somit vorab bzw. parallel testen.
Somit kann für eine bestimmte Konfigurationsgruppe ggf. der Wert: Matrix42\OsPackages\Drivers\Test sein.
In diesem Ordner muss dann die alternative drivers.ini abgelegt sein.

Variablenwerte:
„leer“ bedeutet Matrix42 Standardwert:Matrix42\OsPackages\Drivers, das entspricht Empirum\Configurator\Packages\Matrix42\OsPackages\Drivers
Wichtig: Der Pfad wird ab dem Packages Ordner angegeben!

Perfekt funktioniert PrepareDRVbyModel_Packages mit dem PostOsInstallation Paket von mir. Das genannte Paket prüft ob es eine C:\EmpirumAgent\Drivers\HWspecificSW\Setup.inf gibt und führt diese aus.

Möglichkeiten des PostOsInstallation

Das PostOSInstallation Paket ist einfach und ruft eine abgelegt PostOSInstall.bat auf.
Hinweis: Diese Datei solltet ihr vor der ersten Benutzung einsehen und anpassen!
Die Batch Datei hat heute mindestens drei Funktionen:

  • Es importiert eine von dem PrepareDRVbyModel_Packages Paket erstellte Registry Datei, die ähnliche Werte in die Registry schreibt (HKLM\Matrix42\Installer), wie die EPE Installation.
  • Es passt die durch Matrix42 vorgegebenen Firma, Benutzer, Support etc. Informationen in der Registry an, die man bei der EPE Installation in der Betriebssystemvorlage angegeben hat.
  • Es führt eine Setup.inf aus dem C:\EmpirumAgent\Drivers\HWspecificSW Ordner aus, falls diese vorhanden ist. Somit kann man wieder im „Hardware-Profil“ Treiber per PNP und per EXE/MSI installieren.

Somit ist die PostOSInstall.bat eine Art Ersatz für die EmpirumAgent.bat/UEMAgent.bat.

[Update am 27.08.2019] Die Version 1.5 unterstützt nun auch die Drivers.json Datei, die per WinPEDriverAssistant erstellt wird. Es werden auch Intel NUCs erkannt und ASUS Motherboards. Beide zuletzt genannte Typen werden vom DriverIntegration Paket nicht unterstützt. Bei der Nutzung des PostOSInstallation Paketes, die darin enthaltene PostOsInstall.bat anpassen!

Download

Empirum WinPE PreOS Package zum optimierten Treiberhandling.

PrepareDRVbyModel_Packages 1.5 (597 Downloads )
MD5 Hash der Downloaddatei: 175D4CD2FD119A371EDDA21211D6C0C761A7A50F

PrepareDRVbyModel_Packages 1.1 (650 Downloads )
MD5 Hash der Downloaddatei: 0D3415555E6197DC510B02E946D96C5169FD8529

Los geht’s

Schritt 1:
Zuweisen der Pakete für eine Konfigurationsgruppe:

  • <WinPE-D-2PXE> (optional aber empfohlen)
  • DiskPartitioning
  • PrepareDRVbyModel_Packages
  • WindowsInstallation
  • PxeOffAndReboot
  • DomainJoin
  • PostOSInstallation (optional aber empfohlen)
  • EmpirumAgentSetup
  • Betriebssystem (per Variable oder aus dem rechten Baum)
  • WinPE (Bootkonfiguration)
  • Agent-Template

Schritt 2:
Setzen der Variablen für die oben genannten Pakete (siehe hierzu ggf. auch das WinPE Dokument der Matrix42).
Zuordnung des Betriebssystems

Schritt 3:
Zuweisen eines Computers

Schritt 4:
Aktivieren von PXE und Software (OS.INI ist nicht notwendig!)
Achtung:nicht während einer aktiven WinPE Phase den Computer nochmals aktivieren (dies kann ab WinPE 1.4.11 wieder getan werden).

Rückmeldungen sind willkommen!

Fehlersuche:

  • Erster Anlauf: In der Management Console auf dem entsprechenden Computer das PXE-Log ansehen
  • Informationen zum Ablauf der OS-Packages befinden sich in Empirum\EmpInst\Wizard\OS\Auto\<MAC8> oder <UUID>\debug_Matrix42.Platform.Service.Host.log.
    Suchen nach [wpm-blog und darunter sollten weitere Informationen zu finden sein …

Beispielhafte Screenshots:

DriversAreMandatory = 0 und keine passende Zuordnung/Treiber in drivers.ini gefunden

DriversAreMandatory = 1 und keine passende Zuordnung/Treiber in drivers.ini gefunden

DriversAreMandatory = 1, passende Zuordnung/Treiber in drivers.ini gefunden, abweichende DriversIniPath Variable, Treiber werden kopiert

Der Beitrag Empirum WinPE Paket – DriverIntegration Ersatz erschien zuerst auf Workplace Management Blog.

]]>
https://www.wpm-blog.de/empirum-winpe-paket-driverintegration-ersatz/feed/ 9
Empirum Treiberintegration – einfacher gemacht! https://www.wpm-blog.de/empirum-treiberintegration-einfacher-gemacht/ https://www.wpm-blog.de/empirum-treiberintegration-einfacher-gemacht/#comments Mon, 16 Mar 2015 21:17:58 +0000 https://www.wpm-blog.de/?p=1100 Heute möchte ich meine aktuelle und erprobte Idee zur einfacheren Treiberintegration und Hardwareprofilhandling erläutern. Stand heute muss man die Treiber für Netzwerk und Grafikkarte über den Hardwareassistenten in den OS-Installer integrieren und für alle weiteren … Weiterlesen

Der Beitrag Empirum Treiberintegration – einfacher gemacht! erschien zuerst auf Workplace Management Blog.

]]>
Heute möchte ich meine aktuelle und erprobte Idee zur einfacheren Treiberintegration und Hardwareprofilhandling erläutern. Stand heute muss man die Treiber für Netzwerk und Grafikkarte über den Hardwareassistenten in den OS-Installer integrieren und für alle weiteren Geräte die Treiber über den Hardwareassistenten unter Sonstiges (Sonstige Hardware). Dann muss man nochmals die gerade eingebundenen Treiber einem neu erstellten Hardwareprofil zuordnen. Dieser Vorgang kann sehr aufwändig sein und ist nochmals aufwändiger, wenn man ein und die gleiche Hardware in mehrere unabhängige Empirum Systeme integrieren muss (wie z.B. Test, QA und Produktion). Zusätzlich gibt es immer wieder die Frage, wie man mit Software verfährt die nur für diese Hardware bzw. diesen Hardwaretypen gilt.

Das im Anhang zusammengestellte Verfahren aus Skripten erweitert den OS-Installer bzw. die Installation von Computern.

Meines Erachtens bietet dies dann:

  • Einfachere Integration von einer Vielzahl von Treibern.
  • Einfachere Aktualisierung der Treiber in der Test und Integrations-Phase
  • Schnellere Einbindung neuer Hardwaretypen
  • Einfachere Übernahme in einer andere Empirum Installation (Test, QA, Produktion)
  • Einfache Installation von hardwarespezifischen Treibern und Software per EXE und MSI.

Vorbereitungen

Verzeichnisse und Skripte

Was ist vorzubereiten, was wurde angepasst und was ist in der Download Datei?

  • End_winvista.eis Script
  • Vorlage (Template) für ein Hardwareprofil mit div.Logik
  • Batch-Datei zur Installation von hardwarespezifischer Software je Hardwareprofil nach der OS-Installation

Angepasstes End_winvista.eis Script

Die angepasste „end_winvista.eis“ prüft, ob im Hardwareprofil-Ordner ein PnP Ordner vorhanden ist. Wenn dieser existiert, wird der Pfad zum PnP Ordner zu den Plug & Play-Pfaden für die OS-Installation hinzugefügt. Das bedeutet, dass dieser Ordner während der Windows Installation nach passenden Treibern durchsucht wird. Es ist zu prüfen, ob bereits Änderungen an der End_winvista.eis (Empirum\Empinst\Wizard\Scripts2\Custom) durchgeführt wurden. Wenn dies der Fall ist sind die Änderungen zusammenzuführen (die beigefügten Zeilen werden dann angehängt).

Hinweis: Zwei Aufrufe in der End_winvista.eis sind Empirum Versions abhängig. Nur die Zeilen der eingesetzten Empirum Version aktivieren!

Batch Datei für den Aufruf nach der OS-Installation

  • Installation des .NET Framework 3.5 SP1 oder 4.0 und ggf. weiterer Hotfixe (optional)
  • Aufruf einer Setup.inf, falls vorhanden, zur Installation weiterer Treiber und Software (siehe Hardwareprofil)
  • Installation des Internet Explorers (optional)
  • Schreiben von Hardware und OS-Installations Informationen in die Registry für die spätere Verwendung (optional – nicht enthalten)
  • Aufruf der von Matrix42 gelieferten EmpirumAgent.bat

Kopieren der Empirum\Configurator\User\PostOSInstallation_W<OS><Architektur>.bat in den Empirum\Configurator\User Ordner. Einige Treiber und zusätzliche Software setzen das .NET Framework voraus, weshalb es hier direkt installiert wird. Hier wird entweder das .NET Framework über ein vorhandenes Paket installiert, oder separat. Wenn ein Paket vorliegt, wird der Aufruf zur Installation des .NET Framework 4.0 adaptiert, ansonsten verfährt man wie bei .NET Framework 3.5 aufgezeigt. Die Quellen dazu müssen in diesem Fall noch integriert werden, wie in der „Missing Files.txt“ Datei angegeben.

Die Installation des Internet Explorers und des .NET Framework Paketes sind nicht zwingend erforderlich. Gerade das Paket für den Internet Explorer muss selbst beigesteuert werden.

EmpirumAgent.bat

Beim Aufruf zur Installation des Empirum-Agenten in der EmpirumAgent.bat wird an die Zeile ein /X8 zur Unterdrückung des Neustarts angefügt. Dies sorgt für einen zuverlässigeren Ablauf der Skripte.

Call \\%EmpirumServer%\Configurator$\User\Setup.exe \\%EmpirumServer%\Configurator$\Packages\matrix42\EmpirumAgent\%EmpirumVersion%\Install\Setup.inf /S1 /X8

Betriebssystemvorlage

In der bzw. den genutzten Betriebssystemvorlagen wird der „Abschließende Befehl“ angepasst. Hier wird nun, je nach Betriebssystem die oben erstelle PostOSInstallation_W<OS><Architektur>.bat aufgerufen. Wenn Sie keine unterschiedlichen Installationen hinsichtlich des Betriebssystems an dieser Stelle durchführen, können Sie auch nur eine PostOSInstallation_W7.bat o.ä. erstellen.

Vorgehensweise und Ablauf

Was ist nun bei einer Einbindung eines neuen Hardwaretyps zu tun?

  • Einbinden der Netzwerkkarte, wie gehabt (optional)
  • Einbinden der Grafikkarte, wie gehabt (optional)
  • Erstellen eines Hardwareprofils mit der Angabe eines Ordner (letztes Feld) (Wichtig! – Namen merken!)
  • Kopieren der Vorlage in den erstellten Hardwareprofilordner
  • Ablegen der weiteren PnP Treiber in den Hardwareprofilordner\PnP
  • Einbinden von Treiber bzw. Softwareinstallationen per EXE/MSI (Ablage in HWspecificSW und anpassen der HWspecificSW\Setup.inf)

Erstellen eines Hardwareprofils

Der erste Schritt ist die Erstellung eines Hardwareprofils in der Management Console, unter Konfiguration, OS-Installer, Hardware, Hardwareprofil. Matrix42 Hilfe bis Punkt 14 durchführen.

Wo befindet sich das Hardwareprofilverzeichnis?

Anschließend wird der Ordner des erstellten Hardwareprofils mit den weiteren Treibern und ggf. Aufrufen versehen. Das Verzeichnis für das Hardwareprofil befindet sich je nach Architektur des Betriebssystems in den hier angegebenen Pfaden.

  • X86 = Empirum\Empinst\DRV\Win7\HWMisc
  • X64 = Empirum\Empinst\DRV\Win7\x64\HWMisc

Hardwareprofil

Es liegt eine Vorlage für ein Hardwareprofilordner in Empirum\Empinst\DRV\Win7\<Architektur>\HWMisc\_Template vor, damit alle Skripte zusammen funktionieren. Bitte jeweils für x86/x64 die Datei „Missing Files.txt“ in „HWspecificSW\VCRe100“ beachten, da hier ggf. noch die notwendigen Dateien abgelegt werden müssen. Nachfolgend ist die Wirkungsweise und Nutzung der Verzeichnisse und Skripte im Hardwareprofil erläutert. Es kann auch ohne die VCRedist100 Dateien getestet werden.

PNP Verzeichnis

Wie zuvor beschrieben, dient das PNP Verzeichnis zur Ablage mehrerer Verzeichnisse mit Treibern die während der OS-Installation durchsucht werden.  Das heißt, hier können weitere Verzeichnisse erstellt werden, die dann wiederum die notwendigen Plug & Play (kurz PnP) Treiber beinhalten. Dieses Verzeichnis kann auch mit einer Zusammenstellung von DoubleDriver befüllt werden, dass zuvor mit Hilfe eines Backups von einem vorhandenen System erstellt wurde. Eine andere Methode ist es die DriverPacks, DriverKits, SCCM Driver Packages, o.ä. die Hersteller wie Dell, Fujitsu, HP, uvm. bereitstellen, entpackt in den PnP Ordner abzulegen.

Install\Setup.inf

Die Setup.inf im Install Ordner sorgt für das Kopieren des HWspecifcSW Ordners nach %WinDir%\HWspecifiSW, damit er nach der OS-Installation zur Verfügung steht. In meinem Falle wird die Setup.inf des HWspecifSW Ordners durch die PostOSInstallation_W<OS><Architektur>.bat aus Empirum\Configurator\User aufgerufen. Zusätzlich kann hier bereits eine VCRedist Installation stattfinden, da dies von immer mehr Grafikkartentreibern vorausgesetzt wird.

Aufgrund dessen, dass im Hardwareprofilordner ein Install Ordner mit einer Setup.inf liegt, bedarf es der Anpassung der End_Winvista.eis (siehe oben). Matrix42 erstellt für jeden Treiberordner in dem sich eine Install\Setup.inf befindet einen Installationsbefehl (Früher: EmpirumJob=Yes) und nimmt diesen Ordner nicht in die PnP Pfade mit auf.

HWspecificSW Verzeichnis

In diesem Verzeichnis werden Treiber und Software für diesen Hardwaretyp abgelegt, die mittels einer EXE oder MSI installiert werden. Die Durchführung der Installation(en) findet nach der OS-Installation und vor der EmpirumAgent Installation im Kontext des lokalen Administrators statt. Beispielhafte Aufrufe dazu befinden sich in der HWspecificSW\Setup.inf Datei. Es bietet sich an, für die Treiber ggf. nochmals Unterverzeichnisse zu erstellen. Wird kein Treiber oder sonstige hardwarespezifische Installation nach der OS-Installation mehr benötigt, kann dieser Ordner auch weggelassen werden. Wenn die PostOSInstallation_W<OS><Architektur>.bat keine Setup.inf im %WinDir%\HWspecificSW findet, wird auch keine Installation durchgeführt.

Weitere Optimierung

PostDelaySeconds

Falls die PostDelaySeconds Variable noch nicht als Betriebssystemvariable in der Empirum Management Console vorhanden ist, so sollte diese noch erstellt und auf den Standardwert 180 gesetzt werden.

Empirum Management Console starten, im Menü unter  „Extras, Variablendefinition“

  • Variable: PostDelaySeconds
  • Variablentyp: Betriebssystem
  • Kontrollelement: Zahl
  • Null-Wert erlauben: Ja
  • Standardwert: 180

Falls der Wert trotz Standardwert nicht in die Variablendateien der Computer eingetragen wird, so hilft ein Setzen der Variable auf die oberste Konfigurationsgruppe und Aktivierung der „Zwangsvererbung“.

Fertig

Das sollten alle Schritte sein, damit die „Rädchen“ ineinander greifen. Diese Methode kann auch für Windows 8, 8.1 übernommen werden.

Viel Spaß und einfache Umsetzung wünsche ich Euch!

Benötigte Dateien für den oben genannten Ablauf:  TreiberFramework (3078 Downloads )

Der Beitrag Empirum Treiberintegration – einfacher gemacht! erschien zuerst auf Workplace Management Blog.

]]>
https://www.wpm-blog.de/empirum-treiberintegration-einfacher-gemacht/feed/ 23
Empirum – Software Paketierung Selbststudium https://www.wpm-blog.de/empirum-software-paketierung-selbststudium/ https://www.wpm-blog.de/empirum-software-paketierung-selbststudium/#comments Mon, 08 Sep 2014 21:29:53 +0000 https://www.wpm-blog.de/?p=1317 Im Laufe der Zeit habe ich nun bereits einige Artikel veröffentlicht, die sich immer wieder um die Software Paketierung bzw. Software Verteilung mit Empirum (Matrix42 Physical Workspace Management, UEM – Unified Endpoint Management, Client-Management) drehen. … Weiterlesen

Der Beitrag Empirum – Software Paketierung Selbststudium erschien zuerst auf Workplace Management Blog.

]]>
Empirum Software ManagementIm Laufe der Zeit habe ich nun bereits einige Artikel veröffentlicht, die sich immer wieder um die Software Paketierung bzw. Software Verteilung mit Empirum (Matrix42 Physical Workspace Management, UEM – Unified Endpoint Management, Client-Management) drehen. Damit man die einzelnen Artikel einfacher für ein Selbststudium nutzen kann, habe hier einmal alle Artikel mit dem Bezug zur Software Paketierung und Verteilung zusammengefasst, somit eine Art Anleitung zur „Empirum Paketierung“. Da die Seitenlinks recht selbst sprechend sind, habe ich mir jetzt auch nicht mehr die Mühe gemacht, diese nochmals „hübsch“ aufzubereiten. Für die regelmäßigen Leser gibt es hier nichts Neues – für alle anderen eine „interne“ Link-Sammlung.

Los geht’s!

Diese Linksammlung ist auf dem Stand: 07.04.2020

Generelles

Erstes Paket erstellen und verteilen

Paketierung – Erweitert

Software-Management

Paketierung – Besonderes zur Verteilung

Anpassen der Paketierungsvorlagen

Der Beitrag Empirum – Software Paketierung Selbststudium erschien zuerst auf Workplace Management Blog.

]]>
https://www.wpm-blog.de/empirum-software-paketierung-selbststudium/feed/ 2
Anpassungen an MSI Installationen https://www.wpm-blog.de/anpassungen-an-msi-installationen/ https://www.wpm-blog.de/anpassungen-an-msi-installationen/#respond Thu, 31 Jan 2013 21:21:52 +0000 https://www.wpm-blog.de/?p=788 Viele Softwarehersteller bieten heute Ihre Installation als sogenannte MSI Datei an, die vom Microsoft Installer bzw. Windows Installer verarbeitet werden. Der Microsoft Installer wird seit Windows 2000 mit dem Microsoft Betriebssystem ausgeliefert in Form der … Weiterlesen

Der Beitrag Anpassungen an MSI Installationen erschien zuerst auf Workplace Management Blog.

]]>
Viele Softwarehersteller bieten heute Ihre Installation als sogenannte MSI Datei an, die vom Microsoft Installer bzw. Windows Installer verarbeitet werden. Der Microsoft Installer wird seit Windows 2000 mit dem Microsoft Betriebssystem ausgeliefert in Form der MsiExec.exe und des Windows Installer Services (mehr dazu hier).

In einigen Fällen ist es notwendig in die Installation (MSI Datei) des Herstellers „hineinzuschauen“ um die „Eigenschaften“ (Property Tabelle) zu bestimmen oder gar Anpassungen vorzunehmen, damit die Installation wie gewünscht funktioniert. Will man Einfluss auf eine MSI Installation nehmen, so kann man also einzelne Properties über die Kommandozeile mit angeben. Soll eine Installation mit der Property ALLUSERS mit dem Wert „1“ durchgeführt werden, sieht der Aufruf ähnlich wie folgt aus:

MSIEXEC /I "<Pfad>\<Datei.msi>" ALLUSERS=1 /qn

Eine MST Datei ist eine sogenannte Transformations-Datei und enthält eine oder ein ganzes Set an möglichen Anpassungen die während der Installation der MSI angewandt werden. Dies stellt ein weiterer Weg dar eine MSI Installation anzupassen, ohne die Datei direkt zu verändern.

Es ist zu beachten, das bei direkten Veränderungen an der Installationsroutine (hier MSI) sich Softwarehersteller gerne und zumeist nachvollziehbar aus der Verantwortung herausnehmen.

Somit sollte man immer versuchen die Anpassungen in eine MST Datei auszulagern, damit die MSI Datei unverändert bleibt. Zur Erstellung von MST Dateien sollte man, wenn angeboten, ein Anpassungsprogramm direkt vom Hersteller nutzen.

Microsoft hat sehr früh für das Office 2003 den so genannten Customization Wizard angeboten.  Adobe bietet auch seit einigen Jahren entsprechende Programme für seine Reader und Acrobat Produkte an, wie hier zu den aktuellen Version XI.

Der Empirum Package Wizard erlaubt auch die Erstellung von MST Dateien, der jedoch auch ab und zu, an der „nicht“ Einhaltung der bereitgestellten MSI Dateien scheitert.

Für diejenigen, die nicht gleich eine kostenpflichtige Vollversion eines AdminStudio oder ähnlich vorliegen haben, haben zumeist schon mal etwas vom „ORCA“ gehört. ORCA ist ein von Microsoft angebotener MSI Editor, der in dem jeweils aktuellen Windows Installer SDK angeboten wird. Somit muss man sich jedoch ein „großes“ SDK herunterladen, nur um an den ORCA Editor zu kommen.

Eine Alternative stellt jedoch der freie SuperOrca dar, der hier als ca. 3MB Datei direkt angeboten wird.

Für die ersten Schritte bei der Einsicht und Bearbeitung von MSI Dateien kann man sich an die Property Tabelle heranwagen. Bei weiteren Eingriffen sollte man schon ein gutes Verständnis für die Funktionsweise von MSI Dateien haben.

Dies ist ein beispielhafter Aufruf einer „silent“ MSI Installation samt einer Anpassung durch eine MST Datei:

MSIEXEC /I "<Pfad>\<Datei.msi>" TRANSFORMS="<Pfad>\<Datei.mst> /qn

Es können auch mehrere MST Dateien auf eine MSI Datei angewandt werden. Wie das geht, ist hier beschrieben.

Der Beitrag Anpassungen an MSI Installationen erschien zuerst auf Workplace Management Blog.

]]>
https://www.wpm-blog.de/anpassungen-an-msi-installationen/feed/ 0
Setup.inf Abarbeitung https://www.wpm-blog.de/setup-inf-abarbeitung/ https://www.wpm-blog.de/setup-inf-abarbeitung/#comments Mon, 03 Dec 2012 22:43:57 +0000 https://www.wpm-blog.de/?p=518 Wie an anderer Stelle bereits erläutert geht es mir darum, dass man keine „Angst“ davor hat Software-Pakete zu erstellen und nach und nach durch mehr Erfahrung oder Anspruch die Software-Pakete zu verbessern. Im ersten Schritt … Weiterlesen

Der Beitrag Setup.inf Abarbeitung erschien zuerst auf Workplace Management Blog.

]]>
Wie an anderer Stelle bereits erläutert geht es mir darum, dass man keine „Angst“ davor hat Software-Pakete zu erstellen und nach und nach durch mehr Erfahrung oder Anspruch die Software-Pakete zu verbessern. Im ersten Schritt ist man glücklich, dass die Installation ohne Eingriff durch den Benutzer funktioniert. Wie man ein einfaches Software-Paket auf der Grundlage einer MSI Datei erstellt, erfahrt ihr in einem meiner ersten Video Tutorials.

Die Empirum Setup.inf Skriptsprache ermöglicht einem jedoch weitere Möglichkeiten.

  • Vornehmen von benutzerspezifischen Einstellungen
  • Kopieren von Dateien pro Benutzer
  • Abfragen von Werten auf dem Zielcomputer und „reagieren“ im Software-Paket, wie z.B. Prozessor-Architektur, Registrierungseinträge, Dateien, Dateiversionen, offene Prozesse, uvm.
  • Nutzen von Variablen aus der EMC und steuern der Installation
  • uvm.

Um Veränderungen an den vorhandenen Software-Paketen vorzunehmen, muss man zuerst verstehen, an welcher Stelle man die Veränderung vornehmen kann und welche Befehle und somit Möglichkeiten einem zur Verfügung stehen.

Gehen wir zuerst auf die Abfolge in der Setup.inf ein.

Die meisten Software-Pakete bzw. Vorlagen enthalten die unten stehenden Zeilen (am Ende dieses Blogeintrages), die für die Erläuterung der Abfolge herangezogen werden. Für die Erläuterungen habe ich jedoch ein paar Befehle bereits in die Vorlage eingebaut, um die Funktionsweise besser zu verdeutlichen.

Das Semikolon (;) sagt aus, dass diese Zeile nicht verarbeitet wird und ein Kommentar darstellt.

Das Hash Zeichen (#) oder von manchem auch Lattenzaun genannt, ist gleichzusetzen mit einem GOSUB aus Basic oder einem Prozedur Aufruf aus anderen Sprachen. Das bedeutet die entsprechende Sektion wird aufgerufen und nach der Beendigung springt die Verarbeitung wieder zurück und geht eine Zeile weiter.

Installationsabfolge

Es wird die Sektion [Product] als „Hauptprogramm“ ausgeführt und die dort angegebenen Sektionen der Reihe nach (von oben nach unten) angesprungen bzw. verarbeitet.

  1. Die erste Zeile ohne Kommentar ist der Aufruf der #Set:Product Zeile. Hiermit wird die [Set:Product] Sektion angesprungen.
  2. Es wird „Es geht los“ ausgegeben.
  3. Die Datei Datei.exe wird in das Verzeichnis „%ProgramFiles%\Hersteller Software\“ kopiert. Ist kein Ziel nach der Datei.exe angegeben, dann enspricht das Ziel dem Wert von ApplicationDir=.
  4. Jetzt ist die Sektion [Set:Product] fertig und es wird die Zeile
  5. #Reg:OnUninstallProduct, DELETE angesprungen. Diese wird jedoch nicht verarbeitet, da diese das Flag „DELETE“ besitzt, was aussagt, dass die Sektion nur bei der Deinstallation ausgeführt wird.
  6. Jetzt wird die Zeile #Reg:Product, DONTDELETE angesprungen. Diese wird ausgeführt, und das nur bei der Installation, da die Sektion das Flag „DONTDELETE“ besitzt.
  7. Es wird der Registry Eintrag Version = 2 unter HKLM\Software\Hersteller\Software vom Typ REG_SZ gesetzt.
  8. Anschließend wird die Sektion [INI:Product] und danach
  9. [Security:Product] angesprungen. In beiden Fällen gibt es nichts zu tun.
  10. Als letztes, obwohl es nicht unter [Product] aufgeführt ist, wird die Sektion [Shell:Product] ausgeführt.

Die Installation ist fertig, es gibt eine Verknüpfung auf dem Desktop, dass das Programm „Datei.exe“ startet.

Deinstallationsabfolge

Die Deinstallation wird in umgekehrter Reihenfolge verarbeitet und startet somit von unten in der [Product] Sektion.

  1. Ähnlich wie die Ausnahme, dass [Shell:Product] beim Installieren als letztes aufgerufen wird, wird diese Zeile beim Deinstallieren zuerst ausgeführt. Die Verknüpfung wird entfernt.
  2. Nun werden die Sektionen in der Reihenfolge von unten nach oben angesprungen, und dann ausgeführt wenn die Sektion kein FLAG (nach einem Komma) besitzen, oder das Flag „DELETE“ gesetzt haben.
  3. So wird bei der Deinstallation der Registry Eintrag Version = 1 unter HKLM\Software\Hersteller\Software vom Typ REG_SZ gesetzt, da die Sektion [Reg:OnUninstallProduct] verarbeitet wird.
  4. Nun wird als letztes die Sektion [Set:Product] verarbeitet.
  5. Hier wird nun der Kopiervorgang „1:…“ rückgängig gemacht und die Datei gelöscht. Bestimmten Befehlen muss ein „-“ vorangestellt werden, damit diese bei der Deinstallation ausgeführt werden.

Die Deinstallation ist nun abgeschlossen.

Wenn man sich das selbst einmal anschauen möchte, so kann man den Empirum Package Editor starten, in die „Erweiterte Ansicht“ wechseln und die Setup.inf im Einzelschrittmodus durchlaufen.

Auszug aus einer Setup.inf

...
[Product]
;#FileCheckMachine, MACHINE
;#FileCheckClient, CLIENT
;ReplaceEnv <Variable>
#Set:Product
#Reg:OnUninstallProduct, DELETE
#Reg:Product, DONTDELETE
#Ini:Product, DONTDELETE
#Security:Product

[Set:Product]
ECHO "Es geht los"
1:Datei.exe,%ProgramFiles%\Hersteller Software\, NORMAL, 12345

[Reg:OnUninstallProduct]
HKLM,"Software\Hersteller\Software","Version",0x00000000,1

[Reg:Product]
HKLM,"Software\Hersteller\Software","Version",0x00000000,2

[Ini:Product]

[Security:Product]
;Hier könnten Veränderungen an den Berechtigungen im Dateisystem, der Registry, etc. stattfinden

[Shell:Product]
%Desktop%\Dateiaufruf, Datei.exe

Der Beitrag Setup.inf Abarbeitung erschien zuerst auf Workplace Management Blog.

]]>
https://www.wpm-blog.de/setup-inf-abarbeitung/feed/ 6