|
Erweiterte Skripte erstellen |
[Start] [Zurück] [Vorwärts] | |||||||||
Erweiterte Skripte sind Skripte, bei denen kein Verwendungszweck vorgegeben ist. Somit können erweiterte Skripte beinahe beliebig eingesetzt werden. Eine Ausnahme sind das NetMan Start- und das NetMan Endskript. Hier können Sie nur NetMan (Start/Ende)-Skripte verwenden. Erweiterte Skripte können beliebige Aktionen und Einstellungen enthalten. Z.B. starten sie Programme, verbinden Laufwerke, setzen Rechte und schreiben Registry-Einträge. Erweiterte Skripte zu erstellen bedeutet jedoch auch, dass Sie sich genau mit der Mechanik der einzelnen Aktionen auseinandersetzen müssen und den Skriptablauf komplett selbst gestalten müssen. Wollen Sie einfach nur ein Programm starten und eventuell ein Laufwerk verbinden oder ein Image einlegen, ist es einfacher, direkt ein Programmskript zu erstellen. Ein erweitertes Skript setzen Sie dann ein, wenn Ihnen die Möglichkeiten der vereinfachten Skripttypen wie Programm oder URL nicht mehr ausreichen, um die gewünschten Aktionen abzubilden.
Neue Skripte erstellen Sie im NetMan Center. Sie starten das NetMan Center auf Ihrer Windows-Arbeitsfläche über die Verknüpfung NetMan Tools. Im Folgenden lesen Sie, wie Sie ein erweitertes Skript erstellen und Aktionen einfügen. Außerdem illustrieren Beispiele die Verwendung der gebräuchlichsten Aktionen:
1. Skriptansicht aktivieren: Aktivieren Sie im Selektionsfenster die Ansicht Skripte, indem Sie die Selektionsschaltfläche Skripte klicken.
2. Skripttyp wählen: Im Selektionsfenster wählen Sie Erweitert.
3. Neu klicken: Im Menüband klicken Sie die Schaltfläche Neu.
4. Namen eingeben: Im Dialog Neues NetMan Skript erstellen geben Sie neben Name den Namen des Skripts ein und neben Beschreibung optional eine Beschreibung.
Das Kontrollkästchen Öffnen des neuen Objekts im Editor muss aktiviert sein, damit das Skript nach dem Erstellen zum Bearbeiten im Skripteditor geöffnet wird. Andernfalls müssen Sie den Skripteditor nach dem Erstellen des Skripts manuell starten.
5. Erstellen klicken: Klicken Sie die Schaltfläche Erstellen. Haben Sie das Kontrollkästchen Öffnen des neuen Objekts im Editor aktiviert, wird automatisch der Skripteditor gestartet. Andernfalls starten Sie den Skripteditor manuell, indem Sie das neue Skript doppelklicken.
Aktionen sind die einzelnen Verarbeitungsschritte in der Aktionssequenz eines Skripts. Jedes Skript wird vom Anfang bis zum Ende Aktion für Aktion durchlaufen. Dabei ist es mit NetMan Desktop Manager auch möglich, bestimmte Aktionen zu überspringen oder erneut zu durchlaufen, indem Sie Marker- oder Schleifenaktionen setzen. Aktionen haben Eigenschaften, die Ihre Ausführung modifizieren:
•allgemeine Eigenschaften
•Rückgabewerte
•Berechtigungen
Allgemeine Eigenschaften
Die allgemeinen Eigenschaften einer Aktion sind abhängig von der jeweiligen Aktion. Sie bestimmen, was genau die Aktion bewirkt. So konfigurieren Sie z.B. für die Aktion Toolbox, welche Skripte in der Toolbox angeboten werden, einen beschreibenden Text, wie die Einträge der Toolbox angezeigt werden und wie sich die Toolbox beim Start eines Skripts verhält:
Bis auf wenige Ausnahmen haben alle Aktionen Rückgabewerte, d.h. Sie speichern einen bestimmten Wert und machen ihn für weitere Aktionen verfügbar. Bei einigen Aktionen, wie z.B. der Aktion Abbruch, machen Rückgabewerte keinen Sinn, weshalb diese Aktionen keine Rückgabewerte liefern. Rückgabewerte werden in Rückgabevariablen gespeichert. Als Rückgabevariable wird zunächst die NetMan Desktop Manager Standard-Rückgabevariable verwendet. Sie können jedoch ebenso eine eigene Rückgabevariable definieren. Der Unterschied ist:
•Bei Verwendung der NetMan Desktop Manager Standard-Rückgabevariablen werden Rückgabewerte nur solange in der Rückgabevariablen gespeichert, bis eine weitere Aktion die Rückgabevariable mit ihrem Rückgabewert füllt. In der Regel ist dies bereits die nachfolgende Aktion. Bei Verwendung der Standard-Rückgabevariablen wird der Rückgabewert also nur an die nachfolgende Aktion übergeben.
•Bei Verwendung einer eigenen Rückgabevariablen werden Rückgabewerte aus Aktionen in definierte Variablen geschrieben. Diese Variablen werden nicht überschrieben, es sei denn Sie konfigurieren es so. Die Werte dieser Variablen stehen allen Aktionen des Skripts zur Verfügung. Die Verwendung dieser Variablen ist allerdings auf die Verarbeitung innerhalb eines Skripts beschränkt. Die Variablen können also nicht in Aktionssequenzen anderer Skripte verwendet werden.
Um den Rückgabewert einer Aktion auch in weiteren Skripten verfügbar zu machen, schreiben Sie ihn mit der Aktion Environment ins NetMan Desktop Manager Environment.
Die Verwendung eigener Rückgabevariablen ist flexibler, weil die Rückgabewerte an beliebigen Stellen innerhalb der weiteren Aktionsverarbeitung eingesetzt werden können.
Berechtigungen
Auf jede Aktion vergeben Sie Ausführungsrechte. Dabei stehen Ihnen nicht nur Windows- oder Netzwerk-Rechtestrukturen zur Verfügung, sondern alle NetMan Desktop Manager Rechtestrukturen. Somit können Sie die Ausführung von Aktionen auch an Bedingungen knüpfen oder an die Zugehörigkeit zu Gruppen oder Profilen. Auf welche Rechte und Bedingungen Sie im Einzelnen Zugriff haben, lesen Sie im Kapitel „Globale Rechte erstellen".
Auf der Seite Berechtigungen hat jede Aktion eine Liste, in der die Berechtigungen auf die Aktion verwaltet werden:
Die Liste wird von oben nach unten abgearbeitet. Im obigen Beispiel haben nur Benutzer Zugriff auf die Aktion, die aus dem IPv4-Bereich 192.168.0.0-192.168.0.255 zugreifen, das Betriebssystem Windows XP verwenden, deren Station sich in der Stationsgruppe „Ohne Soundkarte" befindet und die dem Benutzerprofil „Management" angehören. Sind diese Bedingungen nicht erfüllt, wird die Verarbeitung der Aktion abgelehnt. Die Einträge in der Liste werden von NetMan Desktop Manager nach logischen Gesichtspunkten ausgewertet: Jeder Eintrag stellt ein Argument dar, das entweder wahr oder falsch ist. Das Ausführungsrecht ergibt sich aus dem Wahrheitswert für die Verknüpfung aller Einträge: Der Ausdruck
User = „MICHAEL MUSTERMANN" und User = „ADMINISTRATOR"
ist immer falsch (logisches UND), der Ausdruck
User = „MICHAEL MUSTERMANN" oder User = „ADMINISTRATOR"
dagegen ist dann richtig, wenn der Benutzer „MICHAEL MUSTERMANN" oder „ADMINISTRATOR" heißt (logisches ODER).
Bei der Auswertung der logischen Ausdrücke bindet die Verknüpfung UND stärker als das ODER.
In einem Argument, das UND- sowie ODER-Verknüpfungen enthält, wird also gewichtet. Die Verknüpfung folgender Argumente:
wird implizit als folgender Ausdruck gewertet:
( „AD-Benutzergruppe" = „DOCUDOMAIN\Lehrer-global" UND „Betriebssystemversion" = „RDP Sitzungshost") ODER („Benutzer" = „DOCUDOMAIN\Administrator" und „Betriebssystemversion" = „Windows XP")
1. Aktion einfügen: Um Aktionen einzufügen wählen Sie im Menüband die entsprechende Kategorie und aus dem Menü der Kategorie die entsprechende Aktion:
Welche Aktionen zu welcher Kategorie gehören, lesen Sie im Kapitel „Aktionen".
2. Eigenschaften definieren: Auf der Seite Eigenschaften definieren Sie die Eigenschaften der Aktion.
Die Seite Eigenschaften ist für jede Aktion anders, je nach möglichen Einstellungen der Aktion. Eine Beschreibung aller Eigenschaften einer Aktion lesen Sie im Kapitel „Aktionen". An erster Stelle stehen immer die aktionsspezifischen Einstellungen. Viele Aktionen verfügen außerdem über optionale Einstellungen. Diese finden Sie unter Optionale Einstellungen. Unter Allgemeine Einstellungen finden Sie Einstellungen, die für alle Aktionen verfügbar sind:
Aktion ausführen. Deaktivieren Sie dieses Kontrollkästchen, ist die Aktion innerhalb der Aktionssequenz des Skripts deaktiviert.
Beschreibung. Optional geben Sie hier eine benutzerdefinierte Beschreibung der Aktion ein, um den Zweck der Aktion leichter zu erkennen. Geben Sie hier nichts ein, erzeugt NetMan Desktop Manager eine Standardbeschreibung. Die Beschreibung wird im NetMan Debugger verwendet.
Rückgabevariable. Geben Sie hier eine benutzerdefinierte Rückgabevariable ein. Geben Sie nichts ein, verwendet NetMan Desktop Manager die Standard-Rückgabevariable. Wie Sie mit Rückgabevariablen arbeiten, lesen Sie im Abschnitt „Rückgabewerte" dieses Kapitels. Nicht alle Aktionen besitzen Rückgabewerte. Bei einigen Aktionen ist ein Rückgabewert nicht sinnvoll. Z.B. hat die Aktion Abbruch keinen Rückgabewert.
Wir haben einige Beispiele zusammengestellt, die den Gebrauch von Aktionen verdeutlichen. Die meisten Beispiele verdeutlichen auch die Kombination mehrerer Aktionen zu sinnvollen und gebräuchlichen Aktionssequenzen und die Verwendung weiterer NetMan Desktop Manager Werkzeuge. Folgende Beispiele finden Sie im Anschluss:
•Kollektion wechseln: Die Aufgabe der Aktion Kollektion wechseln ist es, einen definierten anderen Desktop einzulesen als den gerade gezeigten. Für Administratoren ist diese Aktion unverzichtbar.
•Einfache Abfrage: Dieses Beispiel demonstriert die Verwendung der Aktion Dateidialog, die Verwendung einer Rückgabevariablen und die Kontrolle der Aktionsverarbeitung im NetMan Debugger.
•Komplexe Abfragen: Erläutert die Aktionen Auswahldialog, Listenauswahl, Dateiliste und Toolbox als komplexere Varianten der Abfragedialoge. Außerdem lernen Sie das Konzept der Berechtigungen genauer kennen.
•Gruppenabhängiger Programmstart: Für Angehörige verschiedener Gruppen werden unterschiedliche Programme gestartet.
•Steuerung des Skriptablaufs: Zeigt, wie Sie mit Steuerungsaktionen den Skriptablauf beeinflussen. Vorgestellt werden die Aktionen Marke anspringen, Schleife, Bedingungsmarke und Abbruch, mit denen Sie hochkomplexe Skriptabläufe erstellen, die angepasst auf Benutzereingaben und Fehler im Skriptablauf reagieren. Verwendet werden außerdem die Aktionen Netzwerklaufwerke verbinden und Netzwerkdrucker verbinden, um Netzwerkressourcen zu verbinden.
•Parameter: Zeigt, wie Sie die Aktion Parameter verwenden, um eine direkte Parametereingabe des Benutzers als String zu speichern und weiter zu verwenden. Sie lesen außerdem, wie Sie Windows-Systemvariablen auswerten und die Rückgabe der Parameter-Aktion über die Aktion Eintrag der Registrationsdatenbank setzen in die Windows-Registrationsdatenbank schreiben.
•Dateien/Ordner kopieren: Zeigt, wie Sie in Skripten Dateien und Ordner erstellen, kopieren und löschen. Im Beispiel wird unter Verwendung der Aktionen Parameter, Ordner erstellen und Ordner kopieren eine Sicherungskopie erstellt.
•Integration CD-ROM-basierter Anwendungen: Beschreibt komplett die Integration einer CD-ROM-basierten Anwendung in NetMan Desktop Manager. Das Beispiel umfasst die Konfiguration von NetMan Desktop Manager für die Verwendung virtueller Laufwerke (Virtual CD) und Images sowie das Einlegen und Auswerfen von Images in Skripten (Aktionen Einlegen einer Imagedatei und Auswerfen einer Imagedatei).
Über die Aktion Kollektion wechseln kann im NetMan Client eine neue Kollektion eingelesen werden. Sie wählen, ob NetMan Desktop Manager eine bestimmte Kollektion lädt oder dem Benutzer alle vorhandenen Kollektionen zur Auswahl anbietet. Des Weiteren bestimmen Sie, ob die neue Kollektion im Startmenü, auf der Arbeitsfläche oder an der Position geladen wird, an der das Skript gestartet wurde:
Erstellen Sie eine Referenz auf das Skript mit dem Kollektionswechsel in jeder neuen Kollektion, damit Sie beim Testen nicht in einer Kollektion „gefangen" werden und nicht mehr in Ihre ursprüngliche Kollektion zurück gelangen. Erteilen Sie gegebenenfalls Rechte auf das Skript, wenn Ihren Benutzern ein Kollektionswechsel verwehrt bleiben soll.
Entfernen Sie aus dem Skript die Einstellung Konfiguration in einer Sitzung ausführen. Ein Kollektionswechsel macht nur in dem Kontext des aktuellen NetMan Clients Sinn.
Mit NetMan Desktop Manager erstellen Sie über Aktionen einfache Abfragen, z.B. in einem Standard-Dateidialog. In diesem Beispiel wird eine Dateiauswahl geboten und dann ein Programm zum Bearbeiten der Dateien gestartet. Verwendet wird die Aktion Dateidialog. Im Dateidialog werden TXT-Dokumente angeboten, nach der Auswahl startet der Windows Editor:
1. Erstellen Sie ein neues Skript.
2. Fügen Sie eine Aktion Dateidialog ein:
3. Editieren Sie die Eigenschaften der Aktion Dateidialog:
Unter Nachricht geben Sie eine Nachricht ein, die den Benutzer darüber informiert, was er tun soll. Neben Pfad wählen Sie den Pfad, der initial geöffnet wird. Später kann der Benutzer den Pfad jedoch wechseln. In der Liste Filter definieren Sie die Dateierweiterungen der Dateien, die gezeigt werden. Der Benutzer kann später eine beliebige Datei auswählen, die der Dateiauswahlmaske entspricht. Klicken Sie die Schaltfläche Neu oberhalb der Liste und geben Sie einen Platzhalter mit Dateierweiterung ein. Definieren Sie unter Rückgabevariable eine Rückgabevariable, im Beispiel text.
4. Ergänzen Sie eine Aktion Programm.
5. Wählen Sie in den Aktionseigenschaften unter Programm das Programm, das gestartet wird, in unserem Beispiel den Windows Editor. Neben Parameter geben Sie den Variablennamen der Rückgabevariablen ein, die Sie auslesen, in unserem Beispiel %text%:
Nach der Eingabe wandelt NetMan Desktop Manager den Pfad in eine Variable um, falls eine Variable für diesen Pfad verfügbar ist. Mehr müssen Sie in unserem Beispiel nicht konfigurieren.
Wenn ein Skript ausgeführt wird, wird ein Ablauf von Aktionen in Gang gesetzt. Wie können Sie bei Auftreten eines Problems erkennen, bei welcher Aktion und warum es auftritt? Wir testen nun das Skript und sehen uns die im Hintergrund ablaufenden Verarbeitungsschritte an. Diese verrät Ihnen der NetMan Debugger. Starten Sie den Debugger direkt aus dem Skripteditor heraus, um die Verarbeitung des Skripts zu kontrollieren:
Im NetMan Debugger sehen Sie die Aktionssequenz des Skripts und die Konsolenausgaben. Klicken Sie die Schaltfläche Start. Der Debugger führt nun das Skript aus und erzeugt gleichzeitig Ablaufmeldungen. So sehen Sie an welcher Stelle ein Problem auftritt:
Weitere Informationen zu den Funktionen des NetMan Debuggers lesen Sie im Kapitel „NetMan Debugger".
Im Beispiel „Einfache Abfrage" wurde ein Standarddialog verwendet, um dem Benutzer eine Dateiauswahl zu ermöglichen. Dies hat aber den Nachteil, dass der Benutzer Zugriff auf weitere Verzeichnisse hat. NetMan Desktop Manager stellt Ihnen weitere Möglichkeiten der Benutzerabfrage bereit. Dieser Abschnitt beschreibt die Aktionen Auswahldialog, Listenauswahl und Dateiliste sowie die Aktion Toolbox.
Mit der Aktion Auswahldialog präsentieren Sie dem Benutzer einen Dialog mit von Ihnen selbst definierten Schaltflächen. Je nach gewählter Schaltfläche wird ein Wert in die Rückgabevariable geschrieben. Der Inhalt der Rückgabevariablen kann wiederum in Bedingungen ausgewertet oder in folgenden Aktionen verwendet werden:
1. Fügen Sie zunächst eine Aktion Auswahldialog in ein Skript ein, indem Sie im Menüband in der Sektion Aktion die Schaltfläche Dialoge klicken und Auswahldialog wählen:
2. Neben Nachricht geben Sie eine Nachricht an den Benutzer ein, die beschreibt, was seine Auswahl bewirkt.
3. Im Listenfeld definieren Sie die Schaltflächen und die Rückgabewerte. Sie tragen einen neuen Wert ein, indem Sie über der Liste die Schaltfläche Neu klicken:
4. Im Dialog Element bearbeiten definieren Sie den Namen der Schaltfläche und den Wert, der zurückgeliefert wird. Wird die Bezeichnung mehrsprachig erstellt, klicken Sie hinter dem Eingabefeld Bezeichnung die Auswählen-Schaltfläche:
Sie müssen Bezeichnungen nicht mehrsprachig anlegen. Wenn Sie nur eine Benutzersprache verwenden, geben Sie die Bezeichnung einfach ins Eingabefeld ein.
5. Im Dialog für die Spracheingabe geben Sie für jede verfügbare Sprache die Schaltflächenbeschriftung ein und klicken OK:
6. Im Dialog Element bearbeiten tragen Sie neben Wert den zurückgelieferten Wert ein und klicken OK:
7. Das erste Schaltfläche-Wert-Paar wird in die Liste eingetragen. Nach diesem Schema definieren Sie alle weiteren Schaltflächen. Definieren Sie außerdem eine Rückgabevariable, um den zurückgegeben Wert der Benutzerauswahl weiter zu verwenden:
Für sehr viele Benutzeroptionen verwenden Sie die Aktion Listenauswahl, die ähnlich arbeitet, aber beliebig viele Auswahloptionen in einer Liste präsentiert:
Dialoge eignen sich generell, um Parameter zu erzeugen, die in der weiteren Verarbeitung an Programme übergeben werden. Der Dateidialog wurde im Beispiel „Einfache Abfrage" vorgestellt. Er verwendet den Windows-Standarddialog zur Dateiauswahl. Bei Verwendung der Aktion Dateiliste dagegen kann der Benutzer nicht beliebig durch Laufwerke, Netzwerk und Verzeichnisse wechseln. Gezeigt wird eine Liste, die diejenige Auswahl an Dateien enthält, die der NetMan Administrator vordefiniert. Bei der Definition ist die Verwendung von Schablonen mit Hilfe von Wildcards erlaubt. Als weitere Optionen können Dateieigenschaften wie Dateigröße und Dateidatum gezeigt sowie die Anzahl der selektierbaren Dateien vordefiniert werden:
Die Aktion Dateiliste liefert mehrere vordefinierte Rückgabewerte. Sie liefert die Zahl der gewählten Dateien in der Variablen $rccount$. Außerdem ist jede einzelne gewählte Datei über die Rückgabevariable abrufbar, an die eine fortlaufende Nummerierung angehängt wird (z.B. $nmrc$1 oder ReturnValue1).
Natürlich kombinieren Sie beliebig verschiedene Abfragen miteinander, um komplexe Skriptsequenzen zu schaffen und damit entsprechend komplexe Abfragen. Das folgende Beispiel zeigt die Verwendung der Aktionen Auswahldialog und Toolbox, um dem Benutzer Programme einer vorher gewählten Office-Suite zu präsentieren. Voraussetzung ist, dass entsprechende Office-Suiten bereits installiert und in NetMan Desktop Manager über Programmskripte eingebunden sind. Wie Sie Programmskripte erstellen, lesen Sie im Kapitel „Programmskripte erstellen". Das folgende Beispiel zeigt, wie Sie den Benutzer über einen Auswahldialog die entsprechende Office-Suite wählen lassen, um ihm dann die einzelnen Office-Programme in einer Toolbox zu präsentieren, wie Sie es von den NetMan Tools kennen:
1. Erstellen Sie ein erweitertes Skript.
2. Fügen Sie eine Aktion Auswahldialog ein, wie es oben beschrieben ist. In unserem Beispiel hat der Benutzer die Wahl zwischen Microsoft Office und OpenOffice:
Für die Auswahl „Microsoft Office" wird der Wert „ms" in die Rückgabevariable „osuite" geschrieben, für die Auswahl „OpenOffice" der Wert „oo".
3. Erstellen Sie eine Aktion Toolbox, indem Sie im Menüband in der Sektion Aktion die Schaltfläche Dialoge klicken und Toolbox wählen.
4. Auf der Seite Eigenschaften tragen Sie unter Skripte alle Skripte ein, die in der Toolbox verfügbar sein sollen. Klicken Sie oberhalb der Liste die Schaltfläche Neu, wählen Sie Auswahl und wählen Sie im Dialog Auswahl eines Skripts die Skripte. Die Skripte werden in die Liste eingetragen:
5. Auf der Seite Berechtigungen definieren Sie die Bedingung, unter der die Toolbox gezeigt wird. In unserem Beispiel muss die Variable „osuite" den Wert „ms" haben, denn die Toolbox zeigt die Programmskripte zu den Microsoft Office-Programmen. Klicken Sie oberhalb der Liste die Schaltfläche Neue Bedingung und wählen Sie Variable.
Eine Übersicht über die verschiedenen möglichen Bedingungen lesen Sie im Kapitel „Globale Rechte erstellen".
6. Im Dialog geben Sie links die zu überprüfende Variable und rechts den Wert ein und klicken OK:
Die Bedingung wird in der Liste Bedingungen eingetragen:
Diese Konfiguration bewirkt, dass die Toolbox mit den Microsoft Office-Programmen nur gezeigt wird, wenn der Benutzer im Auswahldialog die Option „Microsoft Office" gewählt hat und somit der Wert „ms" in die Variable „osuite" geschrieben wurde.
7. Wir fügen eine weitere Aktion Toolbox ein und füllen Sie mit den OpenOffice-Programmen:
8. Auf die zweite Toolbox-Aktion vergeben wir ebenfalls eine Berechtigung. Sie bewirkt, dass die Aktion nur ausgeführt wird, wenn der Benutzer im Auswahldialog die Option „OpenOffice" wählt und somit der Wert „oo" in die Variable „osuite" geschrieben wird:
9. Die Toolbox-Aktion verfügt über zwei unterschiedliche Arbeitsmodi: entweder bleibt die Toolbox geöffnet und die Skripte werden direkt aus der Toolbox gestartet, oder die Toolbox wird automatisch geschlossen und es wird nur die Skript-ID an nachfolgende Aktionen übergeben. Für unser Beispiel entscheiden wir uns für das Starten der Skripte direkt aus der Toolbox. Dazu setzen wir in beiden Toolbox-Aktionen die Option Die Toolbox auf bleibt offen und startet das ausgewählte Skript:
10. Speichern Sie Ihr Skript und testen Sie es. Nach einem erfolgreichen Test fügen Sie das Skript in eine beliebige Kollektion ein.
Nach dem Erstellen wird Ihr Skript nur mit einem Standardsymbol auf der Arbeitsfläche oder im Startmenü gezeigt. Sie erhöhen die Symbolkraft, indem Sie ein aussagekräftiges Symbol zuweisen. Wählen Sie dazu die Eigenschaften des Skripts und klicken Sie die Schaltfläche Symbol ändern:
Gruppenabhängiger Programmstart
Im vorangegangenen Beispiel haben Sie gesehen, wie Sie Bedingungen definieren, um bestimmte Aktionen auszuführen. Mit NetMan Desktop Manager ist es außerdem möglich, die Ausführung von Aktionen oder Programmen an weitere Bedingungen zu binden, wie z.B. die Zugehörigkeit zu einer bestimmte Benutzergruppe oder OU im Active Directory. So starten Sie beim Ausführen eines Skripts für eine Benutzergruppe die eine Anwendung und für eine andere Benutzergruppe eine andere. In unserem Beispiel wird für die Gruppe Mitarbeiter die Anwendung Microsoft Word gestartet, für Mitglieder der Gruppe Gast jedoch nur der Word Viewer:
1. In unserem Skript erstellen wir zunächst eine Programmaktion für Word.
2. Auf diese Aktion vergeben wir eine Berechtigung auf die AD-Benutzergruppe „Redakteure", so dass nur Redakteure Microsoft Word starten können. Klicken Sie auf der Seite Berechtigungen oberhalb der Liste die Schaltfläche Neues Zugriffsrecht und wählen Sie das entsprechende Objekt, in unserem Beispiel AD-Benutzergruppe:
Eine Übersicht über die möglichen Zugriffsrechte lesen Sie im Kapitel „Globale Rechte erstellen".
3. Nachfolgend erstellen wir eine Programmaktion, die den Word Viewer startet. Auf diese Programmaktion erhält die AD-Benutzergruppe „Mitarbeiter" Zugriff:
Entscheidend ist in diesem Skript die Abarbeitungsreihenfolge. Zunächst wird geprüft, ob der Benutzer zur AD-Benutzergruppe „Redakteure" gehört. In diesem Fall wird Microsoft Word gestartet. Für die zweite Programmaktion wird wiederum geprüft, zu welcher AD-Benutzergruppe der Benutzer gehört. Zunächst wird ausgeschlossen, dass das Programm „Word Viewer" ebenfalls für Mitglieder der Gruppe „Redakteure" gestartet wird, da Redakteuren ansonsten durch dieses Skript beide Programme gestartet würden. Als zweites wird geprüft, ob der Benutzer Mitglied der AD-Benutzergruppe „Mitarbeiter" ist. In diesem Fall wird „Word Viewer" gestartet.
4. Möglicherweise bestehen noch weitere AD-Benutzergruppen, die nicht Mitglied einer der beiden Gruppen „Redakteure" oder „Mitarbeiter" sind, z.B. ein Gastzugang. Damit dieser Benutzergruppe das Skript in einer Kollektion gar nicht erst angeboten wird, vergeben wir auf das Skript selbst ebenfalls eine Berechtigung:
Wie eine solche Berechtigung aussieht, hängt von Ihrer Netzwerkkonfiguration ab. In unserem Beispiel ist das Skript von jeder Station aufrufbar, die einem Mitarbeiter zugeordnet ist, zusammengefasst in der AD-Gruppe „Mitarbeiterstationen".
Außer der Abarbeitungsreihenfolge und Berechtigungen verfügt NetMan Desktop Manager über einen weiteren Mechanismus zur Steuerung des Skriptablaufs: Steuerungsaktionen. Gemeint sind alle Aktionen, die Sie im Skripteditor im Menüband, Sektion Aktion, über die Schaltfläche Kontrolle einfügen. Dazu zählen die Aktionen Abbruch, Warten, Schleife, Marke anspringen und Bedingungsmarke. Diese Aktionen verwenden Sie, um die Abarbeitungsreihenfolge der Skriptsequenz zu modifizieren. Dies ist immer dort notwendig, wo Sie in Abhängigkeit von Rückgabewerten bestimmte Aktionen ausführen und z.B. bei Nicht-Erfüllen einer Bedingung zu einem anderen Schritt der Skriptsequenz springen. Das folgende Beispiel demonstriert die Verwendung der Aktionen Marke anspringen und Abbruch. In einer Toolbox werden Office-Programme zur Auswahl angeboten. Alle Programme bis auf Microsoft Access sind frei zugänglich. Access ist durch ein Passwort geschützt. Um das Passwort abzufragen, verwenden wir die Aktion Passwort. Nach einer korrekten Passworteingabe wird dem Benutzer Access gestartet. Hat der Benutzer ein falsches Passwort eingegeben, hat er die Wahl, ob er zur Toolbox zurückkehren oder den Programmstart abbrechen möchte. Die Entstehung eines komplexen, gesteuerten Skriptablaufs im Detail:
1. Zunächst fügen wir in ein Skript eine Toolbox-Aktion ein, die die gewünschten Office-Programme enthält. Als Rückgabevariable wird msoprog definiert:
Der Wert, der von der Toolbox-Aktion übergeben wird, ist immer die Skript-ID, also z.B. „WORD_2003" für Word.
2. Damit die Programme gestartet werden, fügen wir für jedes Programm eine Skript-Aktion ein, zunächst für Access, dann für die anderen Office-Programme. Unter Berechtigungen wählen wir als Bedingung für den Start der Skript-Aktionen die Variable msoprog mit der jeweiligen Skript-ID als Wert:
Dieses Vorgehen funktioniert, da Skripte immer von oben nach unten abgearbeitet werden. Das Skript in unserem Beispiel wird von oben nach unten durchlaufen. Es werden nur Aktionen ausgeführt, auf die die Bedingung der korrekten Rückgabevariablen zutrifft.
3. Für eine komplexe Steuerung des Skriptablaufs verwenden wir Steuerungsaktionen. Da nur beim Aufruf von Access ein Passwort abgefragt werden soll, fügen wir eine Aktion Marke anspringen ein, die, falls nicht Access gewählt wird, sofort zur Abarbeitung der weiteren Programmaktionen springt. Auf die Aktion Marke anspringen wird eine Berechtigung vergeben, die die Aktion ausführt, wenn die Variable msoprog ungleich dem Wert „ACCESS_2013" ist:
4. Nach der Aktion Marke anspringen fügen wir eine Passwort-Aktion ein, die ein Passwort für Access abfragt und definieren eine Rückgabevariable für das Passwort:
Um den Rückgabewert der Aktion Passwort korrekt abzufragen, müssen Sie die genauen Parameter der Passwort-Aktion kennen. Die Passwort-Aktion liefert je nach Eingabe feste Werte: 0 für einen Fehler, 1 für eine erfolgreiche Passworteingabe. Wenn Sie über die korrekte Verwendung einer Aktion unsicher sind, oder die Parameter nicht kennen, klicken Sie direkt in der Aktion auf den Hyperlink Information. Dies öffnet in der Onlinehilfe das Kapitel „Aktionen" direkt beim Abschnitt zu der entsprechenden Aktion.
5. Nach der Passworteingabe werden nun die verschiedenen Szenarien abgebildet: Wurde das Passwort korrekt eingegeben? Und was geschieht, wenn nicht? Im Beispiel wird bei nicht korrekter Eingabe ein Auswahldialog (Aktion Auswahldialog) gestartet, was als nächstes geschehen soll. Der Benutzer hat die Möglichkeiten, das Passwort erneut einzugeben, zur Toolbox zurückzukehren oder die Skriptverarbeitung, sprich den Programmstart, abzubrechen. Außerdem definieren wir die Rückgabevariable diag:
Auf die Aktion Auswahldialog wird die Berechtigung „Variable accpw=0" vergeben, damit der Dialog nur gezeigt wird, wenn die Passworteingabe nicht erfolgreich war.
6. Wir realisieren die Option „Passwort erneut eingeben", indem wir eine Aktion Marke anspringen einfügen und die entsprechende Endmarke vor der Aktion Passwort positionieren. Zusätzlich definieren wir für die Aktion Marke anspringen die Bedingung diag=1:
Sie verschieben Aktionen mit den Pfeiltasten Hoch bzw. Runter.
7. Die Option „Zur Toolbox zurückkehren" realisieren wir durch eine weitere Aktion Marke anspringen. Die entsprechende Endmarke wird vor der Toolbox-Aktion platziert. Die Bedingung für das Ausführen der Aktion Marke anspringen lautet diag=2.
8. Die Option „Abbrechen" realisieren wir durch die Aktion Abbruch. Die Bedingung lautet diag=0:
9. Wurde das Passwort korrekt eingegeben, wird direkt zum Programmstart von Access gesprungen. Zu diesem Zweck erstellen wir direkt nach der Passwort-Aktion eine weitere Aktion Marke anspringen, deren Endmarke direkt vor der Programmaktion von Access platziert wird. Als Ausführungsbedingung formulieren wir accpw=1:
10. Speichern Sie das Skript über Speichern. Ist der Test des Skripts erfolgreich, fügen Sie es in eine beliebige Kollektion ein.
Das obige Beispiel wird sehr komplex, weil dem Benutzer viele Handlungsalternativen geboten werden. Bei einfachen Abfragen erleichtern Ihnen die Aktionen Schleife und Bedingungsmarke die Arbeit. Bleiben wir bei unserem Passwort-Beispiel. Eine einfache Passwortabfrage würde das Passwort solange abfragen, bis das Passwort korrekt ist – ein Beispiel für eine Schleife. In folgendem Beispiel wird die Schleife solange durchlaufen bis das Passwort korrekt eingegeben oder die Abfrage vom Benutzer beendet wurde:
Für Schleifen definieren Sie generell zwei Bedingungen: eine feste Anzahl Durchläufe oder eine Aussage. Definieren Sie eine bestimmte Anzahl an Durchläufen, werden diese immer ausgeführt, egal ob Sie eine Aussage definieren, die vorher wahr wird. Schleife <N> Durchläufe zeigt die Anzahl der Durchläufe, bevor die Schleife als durchlaufen gilt. In unserem Beispiel wird die Schleife solange durchlaufen, bis das Passwort korrekt eingegeben wurde. Eine feste Anzahl Durchläufe benötigen wir nicht, deshalb belassen wir die Anzahl der Durchläufe auf „0". Als Bedingung definieren wir, dass die Variable pw gleich 0 sein muss. Die Variable pw ist die Rückgabevariable der Aktion Passwort und wird somit nur 1, wenn das Passwort korrekt eingegeben wurde. Die Schleife wird also zunächst nur beendet, wenn das Passwort korrekt eingegeben wurde. In diesem Fall wird das Programm Writer gestartet. Damit der Benutzer zusätzlich eine Möglichkeit zum Abbruch hat, wird die Aktion Bestätigung eingefügt, die dem Benutzer die Möglichkeit zum Abbruch gibt. Der Bestätigungsdialog wird nur gezeigt, wenn das Passwort falsch eingegeben wurde. Der Abbruch selbst wird über eine Aktion Abbruch realisiert, die die Rückgabevariable diag auswertet. In der Praxis wird die Aktion Schleife oft zur Listenverarbeitung eingesetzt.
Die Aktion Bedingungsmarke dient in der Praxis oft zur Fehlerbehandlung. Sobald die Bedingung der Bedingungsmarke wahr wird, springt der Skriptablauf direkt zur Bedingungsmarke. Alle eventuell dazwischen liegenden Aktionen werden komplett übersprungen. Die Skriptverarbeitung wird an der Bedingungsmarke fortgesetzt. Im folgenden Beispiel verbinden wir ein Netzwerklaufwerk, das Benutzerdaten enthält, und einen Netzwerkdrucker. Danach starten wir das Programm Writer:
Im Beispiel ist das Verbinden des Netzwerklaufwerks Bedingung für das Starten des Programms, da auf dem Netzwerklaufwerk die Benutzerdaten liegen, ohne die nicht gearbeitet werden kann. Schlägt die Verbindung fehl, soll auch Writer nicht gestartet werden. Die Bedingung für das Anspringen unserer Bedingungsmarke ist, dass die Rückgabevariable userdrive gleich „0" ist. Schlägt das Verbinden des Netzwerklaufwerks ganz am Anfang des Skripts fehl, wird der Wert „0" in die Rückgabevariable userdrive geschrieben und die Skriptverarbeitung springt sofort zur Aktion Bedingungsmarke. Weder wird der Netzwerkdrucker verbunden, noch das Programm gestartet. Stattdessen wird ein Fehlerdialog gezeigt, der die Fehlermeldung enthält.
Beachten Sie, dass das Ausführen einer Bedingungsmarke im normalen Skriptablauf, ohne dass die Bedingung der Marke wahr ist, zu einem Fehler führt. In diesem Fall wird die Skriptverarbeitung abgebrochen. Sie müssen auf eine Bedingungsmarke (und alle mit dem Eintreten der Bedingung verknüpften Aktionen) eine Berechtigung eintragen, die die entsprechende Bedingung enthält.
In unserem Beispiel wurden sowohl auf die Aktion Bedingungsmarke als auch auf die folgende Aktion Bestätigung die Berechtigung „Variable userdrive=0" vergeben. Bei einer in unserem Sinne fehlerfreien Skriptverarbeitung werden diese Aktionen niemals aufgerufen.
Wenn Sie Netzwerklaufwerke und -drucker verbinden oder virtuelle Medien einlegen, sollten Sie immer sicherstellen, dass diese Verbindungen auch ordnungsgemäß wieder getrennt werden. Entweder Sie trennen die Laufwerke direkt im Skript nach dem Schließen des Programms. In diesem Fall fügen Sie nach der Programmaktion eine Aktion Netzwerklaufwerk trennen (oder entsprechendes) ein. In den Einstellungen der Programmaktion setzen Sie die Einstellung Skriptablauf anhalten, bis dieses Programm geschlossen wird. (Standardmäßig ist dies der Fall.) Oder Sie realisieren das Trennen der Laufwerke über ein NetMan Desktop Manager Endskript. Dieses Skript vom Typ NetMan (Start/Ende) wird in den NetMan Einstellungen eingetragen und ausgeführt, wenn der NetMan Client beendet wird. Das Skript kann beim Beenden des NetMan Clients alle Netzwerklaufwerke etc. trennen und virtuelle Medien auswerfen. Wie Sie NetMan (Start/Ende)-Skripte erstellen und bearbeiten, lesen Sie im Kapitel „NetMan (Start/Ende)-Skripte erstellen".
Die Aktion Parameter erlaubt die direkte Eingabe des Parameters durch den Benutzer.
•Wenn eckige Klammern in der Parameterdefinition stehen, wird dem Benutzer nur der Inhalt der eckigen Klammern übergeben. Dies können Leerzeichen sein oder auch ein vorgeschlagener Eintrag, der überschrieben werden kann. Die Textelemente außerhalb der eckigen Klammern werden dagegen immer unverändert übergeben.
•Die Eingabe kann verdeckt erfolgen.
Ein Beispiel für die Verwendung der Aktion Parameter: Über den „NET USE"-Befehl wird ein Netzwerklaufwerk verbunden, das dann in einer nachfolgenden Programmaktion als Benutzerlaufwerk zur Verfügung steht. Anstatt über die Aktion Netzwerklaufwerk verbinden vordefinierte Anmeldedaten zu verwenden, wird über die Aktion Parameter ein Kennwort vom Benutzer erfragt. Die Aktion Passwort ist dazu nicht geeignet, da Sie im Rahmen einer Aktionsfolge dazu dient, zu überprüfen, ob ein berechtigter Benutzer weitere Aktionen ausführen darf (z.B. beim Öffnen eines Ordners im NetMan Client) und nur die Werte „1" und „0" zurückliefert. Die Aktion Parameter liefert einen String:
Das eingegebene Passwort wird als kompletter String in die Rückgabevariable userpw geschrieben und dann wie folgt an die folgende Aktion Programm übergeben:
Die Aktion Programm startet das Windows-Kommandozeilenprogramm Cmd.exe und übergibt als Parameter den „NET USE"-Befehl. Die Syntax des „NET USE"-Befehls lautet:
NET USE [Gerätename | *] [\\Computername\Freigabename[\Datenträger] [Kennwort | *]][/USER:[Domänenname\]Benutzername].
NET USE verwendet als Passwort zur Anmeldung an der Netzwerkressource den String aus der Rückgabevariablen userpw. Im Beispiel wird ein Benutzerverzeichnis mit dem Namen des aktuellen Benutzers verbunden. Den Namen des aktuellen Benutzers erfährt NetMan Desktop Manager ebenfalls aus einer Variablen: der Systemvariablen USERNAME. Einen Überblick über die aktuell gesetzten Environmentvariablen bietet der NetMan Environment Monitor. Wie Sie mit dem Environment Monitor arbeiten, lesen Sie im Kapitel „Environment Monitor".
NetMan Desktop Manager bindet Variablen immer in der Syntax %<Variable>% ein. Verwenden Sie immer diese Syntax, es sei denn, es wird ausdrücklich anders verlangt!
Als Benutzername wird gemäß der „NET USE"-Syntax der aktuell an NetMan Desktop Manager angemeldete Benutzer übergeben. Dazu verwenden wir die Environmentvariable nmuser.
Im NetMan Debugger sehen Sie, wie der Parameter in die Rückgabevariable geschrieben wird und was im Klartext als Parameter an die Programmaktion übergeben wird:
In unserem Beispielskript setzen wir außerdem in der Windows Registry den Pfad unseres eben verbundenen Benutzerverzeichnisses als Standardspeicherort. Dazu verwenden wir die Aktion Eintrag der Registrationsdatenbank setzen:
NetMan Desktop Manager bietet mehrere Aktionen zum Modifizieren von Ordner und Dateien. Konkret sind die Aktionen Dateien kopieren, Dateien löschen, Ordner erstellen, Ordner kopieren und Ordner löschen. In der Praxis können Sie diese Aktionen z.B. einsetzen, um Daten zu sichern. In folgendem Beispiel erstellen wir in einem Archiv-Verzeichnis einen Ordner mit dem aktuellen Datum und kopieren anschließend den gesamten Ordner eines aktuellen Projekts in den neu erstellten Archivordner:
Zunächst fragen wir mit einer Aktion Parameter das aktuelle Datum vom Benutzer ab und speichern es in der Rückgabevariablen date. In der zweiten Aktion erstellen wir mit der Aktion Ordner erstellen einen Archivordner mit dem Namen des Inhalts der Rückgabevariablen date. Danach kopieren wir das aktuelle Projekt mit der Aktion Ordner kopieren in den neu erstellten Ordner. Wir haben die Option Fragen vor dem Überschreiben aktiviert, damit bereits vorhandene Sicherungen nicht einfach überschrieben werden. Auf die Aktionen Ordner erstellen und Ordner kopieren wurden Rückgabevariablen (create und copy) vergeben. Die letzte Aktion Bestätigung wird gezeigt, wenn die Rückgabevariablen create und copy den Wert 1 annehmen. Sie informiert den Benutzer, dass die Datensicherung erfolgreich war.
Die Option Aktion mit Systemrechten ausführen ist für die Modifikation von Ordnern und Dateien von besonderer Bedeutung, da sich so auch Dateien modifizieren lassen, für die keine Benutzerrechte bestehen.
Integration CD-ROM-basierter Anwendungen
Mit NetMan Desktop Manager stellen Sie auch virtualisierte CD-ROM-Ressourcen bereit, z.B. Zeitschriften-CDs oder Datenbanken auf DVD-ROM. Voraussetzung ist, dass Sie diese Ressourcen vorher mit einem geeigneten Werkzeug virtualisiert haben (z.B. Virtual CD). Unter CD-ROM-basierten Anwendungen verstehen wir Anwendungen, die zur Laufzeit CDs mit Daten benötigen. CD-ROM-Anwendungen sind oftmals im Netzwerk nicht ganz einfach zu installieren:
•CD-ROM-Anwendungen lassen sich in vielen Fällen nur über einen Laufwerksbezeichner installieren und betreiben.
•Der jeweilige Laufwerksbezeichner wird beim Setup oft in der Registrationsdatenbank, in INI-Dateien oder nicht editierbaren Dateien abgelegt, so dass eine Änderung dieses Laufwerksbezeichners U: nur durch Neuinstallation der Anwendung möglich ist.
•Diese Problematik wiegt umso schwerer, je mehr CDs der Anwendung zur gleichen Zeit zugeordnet werden sollen.
•In einem Netzwerk mit vielen CD-Anwendungen konkurrieren die vorhandenen Anwendungen um die Laufwerksbezeichner.
•Die CDs werden zum Teil in einem physikalischen CD-Laufwerk erwartet.
Falls Sie Virtual CD TS verwenden, konsultieren Sie unbedingt das Benutzerhandbuch im Kapitel „Installation", um zu erfahren, wie Sie den Virtual CD NetAccess Helper konfigurieren. Ohne diesen zusätzlichen Konfigurationsschritt können Sie keine Images über Netzwerkfreigaben einlegen.
NetMan Desktop Manager verwendet zur Mediensteuerung für Images über die Aktionen Einlegen einer Imagedatei und Auswerfen einer Imagedatei. Diese Aktionen stehen nach der Installation standardmäßig nicht zur Verfügung. Um sie zu verwenden, müssen Sie NetMan Desktop Manager für die Verwendung von Images konfigurieren. In den NetMan Einstellungen definieren Sie in der Sektion NetMan auf der Seite Laufwerke die generelle Unterstützung für Virtual CD. Außerdem definieren Sie den Pfad zu Ihren virtuellen Medien:
Im Folgenden wird exemplarisch eine CD-Anwendung installiert:
1. Die Anwendung wird in ein zentrales Anwendungslaufwerk K: installiert. Unser Anwendungslaufwerk wurde über die NetMan Einstellungen konfiguriert und ordnet beim Start von NetMan Desktop Manager die zentral im Netz installierten Anwendungen der Arbeitsstation über den Laufwerksbezeichner K: (NMAppDrive) zu:
2. Wir legen das Image in ein virtuelles Laufwerk ein und installieren die Anwendung. Im Beispiel verwenden wir die Anwendung „Financial Times". Es handelt sich um eine 32-Bit-Anwendung, die über einen integrierten Reader Zeitschriftenartikel der gleichnamigen Zeitschrift zugänglich macht. Das Artikelarchiv verbleibt auf der CD-ROM, Artikel werden bei Bedarf abgerufen. Die Software wird auf Laufwerk K: installiert.
3. Nach der Installation erstellen wir ein erweitertes Skript, das über eine Aktion Programm die Anwendung Financial Times ausführt:
Achten Sie darauf, die ausführbare Datei über den Pfad einzutragen, über den Sie die Anwendung später auch bereitstellen. In unserem Fall ist dies K:\chnews – K: wurde in den NetMan Einstellungen als Anwendungslaufwerk definiert und mit nmappunc verknüpft.
In unserem Beispiel haben wir einfach den Ordner K:\chnews geöffnet und die Datei Chnews.exe per Drag&Drop in das Eingabefeld Programm gezogen. NetMan Desktop Manager wandelt den Pfad automatisch in die Variable nmappdrive um.
Um sicherzustellen, dass Sie auch das korrekte Arbeitsverzeichnis und alle Programmparameter erfassen, lohnt sich ein Blick auf die Eigenschaften der Verknüpfung in Startmenü!
4. Da die Anwendung Zugriff auf die Daten der CD-ROM benötigt, erstellen wir vor der Programmaktion eine Aktion Einlegen einer Imagedatei:
Im Beispiel verwenden wir statt einem konkreten Pfad die Variable nmvcdpath. Dahinter verbirgt sich die Freigabe \\DocuNM5-ger\Images. Wir haben diesen Pfad in den NetMan Einstellungen als globalen Pfad für virtuelle CDs definiert, wie am Anfang unseres Beispiels beschrieben wurde. Natürlich können Sie auch eine konkrete Freigabe verwenden. Außerdem verwenden wir die Rückgabevariable insert, um abzufragen, ob das Einlegen des Images erfolgreich war.
5. Um zu verhindern, dass Financial Times ohne eingelegtes Image startet, vergeben wir auf die Programmaktion eine Berechtigung „insert=1". Den Fehlerfall bilden wir mit einer Aktion Bedingungsmarke und einer nachfolgenden Aktion Bestätigung ab:
Wie Sie mit der Aktion Bedingungsmarke arbeiten, lesen Sie im Abschnitt „Steuerung des Skriptablaufs".
6. Nachdem die Arbeit mit Financial Times beendet ist, werfen wir das Image wieder aus. Dazu verwenden wir die Aktion Auswerfen einer Imagedatei:
In den Eigenschaften der Aktion wählen wir unter Auswerfen die Option der gewählten Laufwerke. Unter Laufwerk auswerfen definieren wir unser virtuelles Laufwerk. Beachten Sie, dass Sie das Laufwerk mit Doppelpunkt eingeben.