Matrix42 Empirum Variable
Die Paketierung mit der Setup.inf von Matrix42 Empirum ist zwar etwas unübersichtlicher als mit Microsoft SCCM, allerdings wird uns ein wenig mit einer Empirum Variable unter die Arme gegriffen. Variablen können selbst erstellt werden, aber es gibt auch eine große Liste an vordefinierten Variablen. Wie das funktioniert, und wie es eingesetzt werden kann, könnt ihr bei uns nachlesen.
Empirum Variable erstellen
Eine Variable in der Setup.inf zu erstellen ist ganz einfach! Die Definition lautet wie folgt:
DEINEVARIABLE1="C:\your directory" DEINEVARIABLE2=Text DEINEVARIABLE3=Text2
Beispiel:
server-sharepoint=10.50.1.150
In der Variable %server-sharepoint% steht nun der Wert “10.50.1.150”.
Achtung!
Empirum Variable verwenden
Um diese Variablen zu verwenden, müssen diese Variablen nun am Anfang und am Ende mit einem “%” geschrieben werden.
Definition:
deinevariable="C:\directory"
Aufruf:
Call %deinevariable%\install.exe
Beispiel: In der Setup.inf in Zeile 112-115 werden solche Variablen definiert und im unteren Teil (Ab Zeile 156) verwendet.
Empirum Variable Übersicht
Hier gibt es eine Übersicht der Variablen, die von seitens Empirum schon vordefiniert sind. Ich empfehle mit diesen zu arbeiten. Erstens erleichter es Schreibarbeit und Zweitens werden somit “Tippfehler” vermieden.
Variable | Bedeutung |
---|---|
Accessories | Verzeichnis der Verknüpfungen für Zubehör (relativ zu Startmenü\Programme). |
AdminTools | Benutzerabhängiges Verzeichnis im Startmenü für die Verwaltungsprogramme. |
App | Applikationsverzeichnis, also das Zielverzeichnis, das vom Benutzer eingegeben wurde, bzw. durch ApplicationDir vordefiniert wurde. Handelt es sich um eine Shared-Installation, so dass die Anwendungen von einem Server gestartet wurden, handelt es sich um das Verzeichnis auf dem Server, in das durch ein Setup /A kopiert wurde. Für das lokale Verzeichnis muss dann %Client% benutzt werden. |
AppData | Benutzerabhängiges Verzeichnis für Anwendungsdaten. |
AppPaths | Schlüssel in der Registrierungsdatenbank, unter dem die Pfade für die Applikationen abgelegt sind. |
CDBurnArea | Benutzerabhängiges Verzeichnis für Puffer beim CD/DVD Brennen. |
Client | Clientverzeichnis auf dem lokalen Computer, falls es sich um eine Shared-Installation handelt und auf dem lokalen Computer spezifische Dateien abgelegt werden müssen, die nicht auf dem Server oder in einem Verzeichnis wie %Windows% untergebracht sind. Wird keine Shared-Installation durchgeführt, ist der Wert identisch mit %App%. |
ClientSrcDir | Quellverzeichnis für Dateien nach einer Administrator-Installation, die pro Client benötigt werden, z.B. Dateien für das Windows-Verzeichnis. Das Verzeichnis ist relativ zum Installationsverzeichnis und wird durch ClientSrcDir definiert. |
CLRDir | Pfad zum .NET CLR-System-Verzeichnis (steht erst unmittelbar vor dem Aufruf des Befehls RegAsm zur Verfügung). |
CommonAdminTools | Gemeinsames Verzeichnis für Verknüpfungen zu Admin-Tools. |
CommonAppData | Gemeinsames Verzeichnis für Anwendungsdaten. |
CommonDesktop | Gemeinsames Verzeichnis für den Desktop aller Benutzer. |
CommonDocuments | Gemeinsames Verzeichnis für Dokumente. |
CommonFavorites | Gemeinsames Verzeichnis für Favoriten. |
CommonFilesDir | Verzeichnis für gemeinsam genutzte Komponenten eines Herstellers. Jeder Hersteller legt darunter ein eigenes Verzeichnis an, z.B. “Microsoft Shared”. |
CommonFilesDirx86 | Verzeichnis für 32-Bit gemeinsam genutzter Komponenten eines Herstellers auf 64-Bit Computern. Jeder Hersteller legt darunter ein eigenes Verzeichnis an, z.B. “Microsoft Shared”. |
CommonMusic | Gemeinsames Verzeichnis für eigene Musik. |
CommonPictures | Gemeinsames Verzeichnis für eigene Bilder. |
CommonPrograms | Gemeinsames Verzeichnis für Verknüpfungen zu Programmen (Startmenü/Programme). |
CommonStartMenu | Gemeinsames Verzeichnis für das Startmenü. |
CommonStartup | Gemeinsames Verzeichnis für Autostart-Verknüpfungen. |
CommonTemplates | Gemeinsames Verzeichnis für neue Dokumente (wird beim Befehl Neu des Explorer verwendet). |
CommonVideo | Gemeinsames Verzeichnis für eigene Videos. |
Company | Name der Firma, die durch den Benutzer eingegeben oder durch DefaultCompany vordefiniert wurde. |
ComputerName | Name des Computers. |
Cookies | Benutzerabhängiges Verzeichnis für die Internet Explorer Cookies. |
Data | Datenverzeichnis, der durch DataDir vordefiniert werden kann. |
Desktop | Benutzerabhängiges bzw. gemeinsames Verzeichnis für den Desktop (je nach Einstellung von CommonShellLinks). |
DeveloperName | Name des Herstellers, welcher durch DeveloperName definiert wurde. |
DeveloperNameShort | Kurzname des Herstellers, welcher durch DeveloperNameShort definiert wurde. |
DomainName | Name der Domäne oder Arbeitsgruppe. |
ErrorLevel | Error Level nach einem CALL Befehl. |
ExactSysTime | Aktuelles Datum im Format HH:MM:SS.mmm. |
Favorites | Benutzerabhängiges Verzeichnis für bevorzugte Dateien (Favoriten). |
Fonts | Verzeichnis für Schriftarten. |
Games | Verzeichnis der Verknüpfungen für Spiele (relativ zu Startmenü\Programme). |
History | Benutzerabhängiges Verzeichnis für den Internet Explorer Verlauf. |
InstalledVersion | Zuletzt installiere Version, kann nur im Abschnitt Requirements benutzt werden. |
InstalledRevision | Zuletzt installiere Version, kann nur im Abschnitt Requirements benutzt werden. |
InternetCache | Benutzerabhängiges Verzeichnis für den Internet Explorer Cache. |
IsLaptop | Liefert “1”, wenn es sich um ein Laptop (Notebook) handelt, “0” wenn es kein Laptop (Notebook) ist. |
LocalAppData | Benutzerabhängiges Verzeichnis für lokale Einstellungen. |
LocalSettings | Lokale Einstellungen |
LongSysTime | Aktuelles Datum im Format HH:MM:SS. |
MachineKeyName | Schlüssel in der Registrierungsdatenbank, unter dem Versionsinformationen der installierten Anwendung abgelegt werden. Kann durch MachineKeyName definiert werden. |
MediaPath | Verzeichnis für Multimedia-Dateien wie WAV, RMI usw. |
Multimedia | Verzeichnis der Verknüpfungen für Multimedia Tools (relativ zu Startmenü\Programme). |
MyMusic | Benutzerabhängiges Verzeichnis für eigene Musik. |
MyPictures | Benutzerabhängiges Verzeichnis für eigene Bilder. |
MyVideo | Benutzerabhängiges Verzeichnis für eigene Videos. |
NetHood | Benutzerabhängiges Verzeichnis für die Netzwerkumgebung. |
Option | Kompletter Name der Option, die gerade verarbeitet wird, bei hierarchischen Optionen mit komplettem Pfad, z.B. Samples\Video. |
OptionName | Bei hierarchischen Optionen (z.B. Samples\Video), hinterster Teil des Namens einer Option, z.B. Video. |
OptionText | Text der Option, die gerade verarbeitet wird. |
OS.BuildNumber | Die Build-Nummer des Betriebssystems, z.B. “7601”. |
OS.CSDVersion | Das installierte Service Pack auf dem System, z.B. “Service Pack 1”. |
OS.DisplayString | Vollständiger Name des Betriebssystems, z.B. “Microsoft Windows 7 Professional Service Pack 1 (build 7601), 64-bit”. |
OS.MajorVersion | Die größere Nummer der Version des Betriebssystems, z.B. “6”. |
OS.MinorVersion | Die kleinere Nummer der Version des Betriebssystems, z.B. “1”. |
OS.Name | Name des Betriebssystems, z.B. “Windows 7”. |
OS.PlatformId | Die Betriebssystem-Plattform Nummer, siehe auch msdn.microsoft.com. |
OS.ProductType | Zusätzliche Informationen über das System, siehe auch msdn.microsoft.com. |
OS.ServicePackMajor | Die größere Nummer der Version des installierten Service Packs auf dem System, z.B. “1”. |
OS.ServicePackMinor | Die kleinere Nummer der Version des installierten Service Packs auf dem System, z.B. “0”. |
OS.SuiteMask | Bitmaske, die die Produkt-Suiten auf dem System identifiziert, siehe auch msdn.microsoft.com. |
Personal | Benutzerabhängiges Verzeichnis für persönliche Daten. |
PrinterDriverDir | Verzeichnis für die Druckertreiber. Kann durch die Variablen PrintServer und PrintEnvironment im Abschnitt Application beeinflusst werden. Dorthin sollten Druckertreiber und Druckmonitore kopiert werden. |
PrintHood | Benutzerabhängiges Verzeichnis für die Druckumgebung. |
PrintProcessorDir | Verzeichnis für den Druckprozessor von Windows NT. Kann durch die Variablen PrintServer und PrintEnvironment im Abschnitt Application beeinflusst werden. |
ProductID | Seriennummer des Produktes. (Eingabe durch den Benutzer noch nicht implementiert). |
ProductName | Name des Paketes, das durch ProductName definiert wurde. |
ProductNameShort | Kurzname des Produktes, welcher durch ProductNameShort definiert wurde. |
ProgramFilesDir | Verzeichnis für Anwendungsprogramme. Jede Anwendung legt darunter ein eigenes Verzeichnis an, z.B. “Phoenix”. |
ProgramFilesDirx86 | Verzeichnis für 32-Bit Anwendungsprogramme auf 64-Bit Computern. Jede Anwendung legt darunter ein eigenes Verzeichnis an, z.B. “Phoenix”. |
Programs | Benutzerabhängiges bzw. gemeinsames Verzeichnis für Verknüpfungen zu Programmen (je nach Einstellung von CommonShellLinks). |
Recent | Benutzerabhängiges Verzeichnis für die zuletzt bearbeiteten Dokumente. |
ReinstallString | Zeichenkette, die von der Systemsteuerung benutzt wird, um mit dem Setup-Programm ein Reinstall aufzurufen. Kann durch ReinstallString definiert werden. |
Revision | Revisionsnummer des Produktes, welche durch Revision definiert wurde. |
SendTo | Benutzerabhängiges Verzeichnis für das “Senden an” Menü des Explorer. |
SetupBits | Anzahl der Bits der Version des laufenden Setup-Programms, z.B. 32-Bit oder 64-Bit. |
SetupInf | Vollständiger Name der Datei Setup.inf, mit der Setup gestartet wurde. |
SetupInfDir | Verzeichnis, in dem die Datei Setup.inf liegt, relativ gesehen zum Applikationsverzeichnis, das durch SetupInfDir definiert wurde. |
SetupInfFileName | Vollständiger Name der Datei Setup.inf, mit der Setup gestartet wurde. |
SetupInfPathName | Pfadname zur Datei Setup.inf. |
SetupInfServerName | Servername des Servers, von dem aus Setup.inf geladen wurde. |
SetupName | Name des Setup-Programms, der im Fenstertitel angezeigt wird und durch SetupName definiert wurde. |
SoftwareDepotDistributionFlags, <Bit> | Die Verteilungsflags werden vor der Installation des jeweiligen Paketes in das Environment des Computers geschrieben und können über diese Variable abgefragt werden. Mögliche Werte für <Bit> siehe Funktionen für die If Abfrage. |
Src | Quellverzeichnis, aus dem die Dateien für die Installation kopiert werden, die durch SrcDir definiert wurde. |
StartMenu | Benutzerabhängiges bzw. gemeinsames Verzeichnis für das Startmenü (je nach Einstellung von CommonShellLinks). |
Startup | Benutzerabhängiges bzw. gemeinsames Verzeichnis für Autostart-Verknüpfungen (je nach Einstellung von CommonShellLinks). |
SysDate | Aktuelles Datum im Format TT.MM.JJJJ. |
SysTime | Aktuelles Datum im Format HH:MM. |
System | Windows-Systemverzeichnis. Falls eine Datei auf dieses Verzeichnis kopiert werden soll und das Verzeichnis nicht beschrieben werden kann, kopiert Setup die Datei stattdessen automatisch ins Windows-Verzeichnis. Falls der Name dieses Verzeichnisses irgendwo abgelegt werden muss (z.B. in der Registrierungsdatenbank), muss die Variable %WriteableSystem% benutzt werden. |
SystemTools | Verzeichnis der Verknüpfungen für Systemprogramme. (relativ zu Startmenü\Programme). |
Templates | Benutzerabhängiges Verzeichnis für neue Dokumente (wird beim Befehl Neu des Explorer verwendet). |
UninstallDisplayName | Zeichenkette, die in der Systemsteuerung erscheint, wenn die Anwendung installiert wurde, so dass sie wieder deinstalliert werden kann. Kann durch UninstallDisplayName definiert werden. |
UninstallKeyName | Namen des Schlüssels in der Registrierungsdatenbank, der zum Deinstallieren einer Anwendung benötigt wird. Kann durch UninstallKeyName definiert werden. |
UninstallString | Zeichenkette, die von der Systemsteuerung benutzt wird, um das Uninstall-Programm aufzurufen. Kann durch UninstallString definiert werden. |
User | Name des Benutzers, der durch den Benutzer eingegeben oder durch DefaultUser vordefiniert wurde. |
UserDesktop | Benutzerabhängiges Verzeichnis für den Desktop des angemeldeten Benutzers. |
UserKeyName | Schlüssel in der Registrierungsdatenbank, unter dem benutzerspezifische Informationen gespeichert werden. Kann durch UserKeyName definiert werden. |
UserProfile | Benutzerabhängiges Stammverzeichnis. |
UserPrograms | Benutzerabhängiges Verzeichnis für Verknüpfungen zu Programmen (Startmenü/Programme). |
UserStartMenu | Benutzerabhängiges Verzeichnis für das Startmenü. |
UserStartup | Benutzerabhängiges Verzeichnis für Autostart-Verknüpfungen. |
Version | Versionsnummer des Produktes, welche durch Version definiert wurde. |
Windows | Windows-Verzeichnis. |
WindowsBits | Anzahl der Bits der Version von Windows, z.B. 32-Bit oder 64-Bit. |
WindowsName | Name des Betriebssystems, wie es in der Registrierungsdatenbank (HKLM\Software\Microsoft…) unterschieden wird. Er ist entweder “Windows” oder “Windows NT”. |
WindowsUser | Name des Benutzers, wie er in Windows angemeldet ist. |
WindowsVersion | Versionsnummer von Windows, z.B. 4.0, 4.10, 5.0 6.0 usw. Bitte beachten Sie, dass die Zahlen hinter dem Komma immer zweistellig sind (außer 0). |
WriteableSystem | Windows-Systemverzeichnis oder das Windows-Verzeichnis, falls das Systemverzeichnis nicht beschreibbar ist. Dies ist meist bei einem Shared Windows der Fall. Kann für die Registrierungsdatenbank usw. benutzt werden, um Dateien zu beschreiben, die statt ins System- ins Windows-Verzeichnis kopiert werden sollen. |
$Batch | Alle Stapel Benutzer. |
$CreatorOwner | Alle Erzeuger/Besitzer. |
$Dialup | Alle Remote Benutzer. |
$DomainAdmin | Domänen Administrator. |
$DomainAdmins | Domänen Administratoren. |
$DomainGuest | Domänen Gäste. |
$DomainUsers | Domänen Benutzer. |
$Everyone | Jeder. |
$Interactive | Alle interaktiven Benutzer. |
$Local | Alle Benutzer, die lokal angemeldet sind. |
$LocalAccountOps | Lokale Kontooperatoren (nur Server). |
$LocalAdmins | Lokale Administratoren. |
$LocalBackupOps | Lokale Backupoperatoren. |
$LocalCertsvcDCOMAccessGroup | Lokale DCOM Sicherheitsgruppe für DCOM Zugriff (nur Server). |
$LocalDCOMUsers | Lokale DCOM Benutzer Gruppe (nur Server). |
$LocalGuests | Lokale Gäste. |
$LocalIUsers | Lokale interaktive Benutzer (nur Server). |
$LocalPowerUsers | Lokale Hauptbenutzer. |
$LocalPrintOps | Lokale Druckoperatoren (nur Server). |
$LocalRASServers | Lokale RAS Server Gruppe (nur Server). |
$LocalRemoteDesktopUsers | Lokale Terminal Server Benutzer Gruppe (nur Server). |
$LocalSystem | Lokales Systemkonto. |
$LocalSystemOps | Lokale Systemoperatoren (nur Server). |
$LocalTSLicenseServers | Lokale Terminal Service Lizenz Server Gruppe (nur Server). |
$LocalUsers | Lokale Benutzer. |
$Network | Alle Netzwerk Benutzer. |
$Service | Alle Dienste. |
$SID | Security Identifier (SID) des angemeldeten Benutzers, oder von LOCALSYSTEM (wenn kein Benutzer angemeldet ist). |
Daten von Empirum Helpfiles.