Bei den folgenden Befehlen handelt es sich um allgemeine Befehle, die in CA DMM-Skripts verwendet werden:
Bewirkt, dass der Kontrollfluss an das Ende der aktuellen Schleife springt und die erste Anweisung nach der Schleife ausgeführt wird. Im Gegensatz zu "break" bewirkt das Schlüsselwort "return", dass nicht nur alle Schleifen, sondern auch der Sichtbarkeitsbereich der Funktion verlassen wird. Das Schlüsselwort "break" ist nur innerhalb einer Schleife sinnvoll.
function Foo()
{
while (true)
{
while (z < 5)
{
...
if (x == false)
{
break; // jumps to line following while (z < 5) {}
}
if (y == true)
{
return 5; // returns from Foo() immediately
}
}
if (x == false)
{
break; // jumps to line following while (true) {}
}
}
...
return -1; // returns from Foo() immediately
Mit diesem Befehl wird eine binäre Zeichenfolge in eine ASCII-Zeichenfolge umgewandelt. Er enthält einen erforderlichen Parameter, und zwar die Zeichenfolge mit den zu konvertierenden binären Daten. Der zweite Parameter ist ein optionaler Parameter, bei dem es sich um einen binären Wert handelt. Wenn der Boolesche Wert "Richtig" ist, wird er in eine UNICODE-Zeichenfolge umgewandelt. Wenn er "Falsch" ist, wird er in eine ASCII-Zeichenfolge umgewandelt.
Binäre Zeichenfolge
Der Boolesche Wert
ConvertBinaryToString(<Wert>,[Boolean]);
var result = ConvertBinaryToString("000FFFDCB709E")
Mit diesem Befehl wird eine ASCII-Zeichenfolge in eine binäre Zeichenfolge umgewandelt. Er enthält einen erforderlichen Parameter, und zwar die zu konvertierende ASCII-Zeichenfolge. Der zweite Parameter ist optional. Wenn dieser Parameter "Richtig" ist, wird er zu UNICODE Binary umgewandelt.
ASCII-Zeichenfolge
Der Boolesche Wert
ConvertStringToBinary(<Wert>,[Boolean]);
var result = ConvertStringToBinary("convert this string to binary")
Bestimmt die Anwendung, die mit einem Skript verknüpft ist. Es kann nur eine Anwendung mit einem Skript verknüpft werden. Auf dem Quellcomputer wird sie von der der Funktion "Erkennung" aufgerufen. Auf dem Zielcomputer kann sie von einer beliebigen Stelle aufgerufen werden, um den Anwendungspfad aufzulösen. Der Interpreter löst das Schlüsselwort APPLICATIONPATH auf, das nicht gültig ist und erst nach dem Aufruf des Detect-Befehls verwendet werden sollte. "Detect" sollte von dem Skript innerhalb der Detection-Funktion aufgerufen werden, um unnötige Verarbeitungsschritte zu vermeiden.
Bei den Parametern von "Detect" handelt es sich um den Namen der ausführbaren Datei und einen optionalen Registrierungsschlüsselwert. Beide Parameter werden als Zeichenfolgen angegeben. Bei dem optionalen Parameter handelt es sich um den vollständigen Pfad zu dem Registrierungswert, der wiederum den Pfad zu der ausführbaren Datei enthält. Wenn der Registrierungswert dem Standardparameter entspricht, sollten am Ende des Pfads der Name des Schlüssels und ein Schrägstrich stehen (siehe Beispiel weiter unten). Das Skript muss innerhalb der Detection-Funktion den Rückgabewert von "Detect" überprüfen, um festzustellen, ob die Ausführung des Skripts fortgesetzt oder abgebrochen werden soll.
Der Name der ausführbaren Datei (Zeichenfolge)
Der Registrierungspfad (Zeichenfolge)
Detect ( <Executable name>, [Registry path] );
if( Detect( "MyApp.exe", "HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\App Paths\\MyApp.exe\\" ) == false)
{
return;
}
if (Detect ( <executable Name>) == false)
return;
Führt eine ausführbare Datei oder DLL-Datei aus. Wenn die auszuführende Datei oder die DLL-Datei für den Aufruf nicht gefunden werden kann, wird dieser Befehl nicht ausgeführt.
Der erste Parameter ist der Pfad zum auszuführenden Element. Wenn der Pfad auf eine DLL-Datei verweist, muss die API-Funktion direkt nach zwei Doppelpunkten stehen. Das Format des DLL-Aufrufs lautet PATH::APIFunctionName. "Execute" für DLL-Datei sucht nur bei zwei Funktionstypen nach Aufrufen:
int FunctionName();
int FunctionName( const char * );
Wenn beim Aufruf Befehlszeilenargumente verwendet werden, geben Sie die Argumente oder eine leere Zeichenfolge ein.
Ein boolescher Wert, der angibt, ob das Skript auf den Abschluss der Ausführung einer ausführbaren Datei wartet. Dieser Parameter wird bei DLL-Aufrufen ignoriert.
/*executes notepad with the following file, myfile.txt and waits for the process to end.*/ Execute( "c:\\windows\\notepad.exe", "myfile.txt", true ); /*executes notepad without parameters and waiting.*/ Execute( "c:\\windows\\notepad.exe" ); /* makes a call into the dll with parameters*/ Execute( "c\\windows\\Somelib.dll::CheckNetwork", "000d1");
Beendet ein Skript. Wenn diesem Schlüsselwort ein Wert folgt, wird er in die Debug- und Fehlerprotokolle geschrieben. Die Verwendung von Klammern ist optional.
Exit ("Exiting because MS Word does not exist on machine.");
Mit diesem Befehl werden alle Umgebungsvariablen in der betreffenden Zeichenfolge erweitert, und die Ergebnisse werden zurückgegeben.
Zeichenfolge, die die Umgebungsvariablen enthält
ExpandString(<string>);
var result = ExpandString("%WinDir%")
Gibt rechnerbezogene Daten auf Grundlage der CommandID zurück. Der Fehler wird während der Migration zurückgegeben, wenn eine falsche CommandID übermittelt wird. Sie können diesen Befehl auf beiden Seiten ("Store" und "Apply") der Migration verwenden.
Hinweis: Sie können diesen Befehl auch in früheren Versionen des Produkts verwenden. Dieser Befehl erzeugt Syntaxfehler, wenn Sie ihn in älteren Versionen von CA DMM verwenden.
CommandID (z. B. GET_CUR_SEL) zum Ermitteln des Namens des derzeit ausgewählten Knotens (Anwendungs- oder Systemeinstellungen) für die Migration.
GetEngineData(<CommandID>);
var strNewPath = GetEngineData(GET_CUR_SEL)
Gibt den neuen Dateipfad zurück, der dem neuen Rechner zugeordnet ist. Mit diesem Befehl können auch Pfade verwendet werden, die andere Trennzeichen als das häufig verwendete \\-Zeichen enthalten.
Der alte Dateipfad (Zeichenfolge)
Das Pfadtrennzeichen (Zeichenfolge)
GetMappedPath( <alter Dateipfad>, [<Pfadtrennzeichen>] );
newPath = GetMappedPath("c:\\alter Pfad\\file.txt");
/* newPath will equal the new file path.*/
oldPath = "c:_old path_file.txt";
newPath = GetMappedPath( oldPath, "_" );
/* newPath will equal the new file path with the delimiter*/
/* for example newPath could equal e:_new path_file.txt*/
Gibt die Plattform des Computers zurück. Die zurückgegebenen Werte sind: WIN2000, WINXP, WINVI oder WIN7 (beachten Sie die Liste 'Definitionen'). Es ist ein Parameter erforderlich, der angibt, ob die Plattform des Quell- oder des Zielrechners abgerufen werden soll. Dieser Parameter ist ein boolescher Wert, bei dem es sich um eine optionale Angabe handelt. Die Standardeinstellung "Deaktiviert" weist auf den Zielcomputer hin, "Aktiviert" auf den aktuellen Computer.
Hinweis: Der boolesche Parameter kann nur bei der allgemeinen Funktion sowie bei den GENERAL- und APPLY-Funktionen verwendet werden. Wenn der Wert für andere Zwecke verwendet wird, treten Syntax- oder Laufzeitfehler auf.
Der Rechner (Boolescher Wert)
GetPlatform( [Boolean] );
if (GetPlatform(DESTINATION) == WINXP)
ApplyWinXPWord();
Mit diesem Befehl wird eine Abfrage auf das Betriebssystem durchgeführt, um zu ermitteln, ob es sich um Windows 2000, Windows XP, Windows Vista oder Windows 7 handelt. Dieser Parameter ist optional. Wenn er aktiviert ist, ruft CA DMM das Betriebssystem des Quellrechners ab, andernfalls das Betriebssystem des Zielrechners. Die Standardeinstellung ist "Deaktiviert".
Hinweis: Der Parameter kann nur während der GENERAL- und APPLY-Funktionen aktiviert werden. Der Parameter verursacht einen Syntax- oder Laufzeitfehler, wenn er in einer Speicherfunktion verwendet wird.
Der Rechner (Boolescher Wert)
Value = IsLikeNT([Boolean]);
IsLikeNT(SOURCE);
Ordnet einem Pfad für die Dauer eines Skripts einen anderen Pfad zu. Diese Pfadzuordnung wird unter Verwendung des MapPath-Schlüsselworts im aktuellen Skript auf alle Anwendungsoperationen angewendet. Durch dieses Schlüsselwort werden bei den Operationen "ApplyDirectory", "ApplyFile" und "ApplyMappedValue" alle Pfade ersetzt, bei denen <alter Pfad> und <neuer Pfad> übereinstimmen.
Der alte Pfad (Zeichenfolge)
Der neue Pfad (Zeichenfolge)
MapPath(<old path>, <new path>);
MapPath("c:\\winword\\data", "c:\\winword\\Application Data");
Zeigt dem Benutzer eine Meldung an. Dieser Befehl ist eine Zeichenfolge und verwendet einen Parameter. Die Verwendung von Klammern ist optional.
Der Meldungstext (Zeichenfolge)
Message ( <string> );
Message ("help!");
Erstellt eine Option zum Anzeigen der Einstellungsseiten. Ordnet der Option außerdem die Funktionen zum Speichern und Anwenden zu. Wenn der Benutzer eine Option auswählt, werden die der Option zugeordneten Funktionen vom Interpreter aufgerufen. Die anzuzeigende Anweisung kann mit Hilfe von Schrägstrichen eine Hierarchie festlegen. Beispiel: Die Option "Microsoft Word\\Symbolleiste" zeigt "Microsoft Word" auf einer Zeile an, und "Symbolleiste" wird auf der nächsten Zeile in der Baumansicht für Optionen angezeigt.
Der Optionspfad (Zeichenfolge)
Der Name der STORE-Funktion (Zeichenfolge)
Der Name der APPLY-Funktion (Zeichenfolge)
Option( <option path> [Funktionsname speichern], [Funktionsname anwenden], [LanguageIndependentPath]);
Option ( "Microsoft Word\\Toolbar");
Option( "MicrosoftWord\\Toolbar\\Tooltips", "StoreTooltips", "ApplyTooltips", "msword\\toolbar\\tooltips");
Wenn das Element vom Benutzer ausgewählt wird, werden vom Interpreter die Funktionen zum Speichern und Anwenden aufgerufen. Wenn der Benutzer eine Option auswählt, werden auch die übergeordneten Funktionen aufgerufen.
Druckt eine Meldung im Aktivitäts-, und Debug-Protokoll. Die Verwendung von Klammern ist optional. Dieser Befehl verwendet einen Parameter und ist eine Zeichenfolge. Informationen zum optionalen zweiten Parameter finden Sie in Druckstufen. Wenn keine Druckstufen angegeben werden, ist der Parameter standardmäßig auf "GENERAL" eingestellt.
Zeichenfolge
print (<string>);
Print ("Warning: file win.ini will be overwritten");
Druckt im Ausnahmeprotokoll eine Zeichenfolge. Das Ausnahmeprotokoll wird für das Anzeigen von Elementen, die CA DMM nicht verschieben konnte, oder für Migrationsanweisungen verwendet. Beispiel: Das Netscape Communicator-Skript im Ausnahmeprotokoll druckt detaillierte Anweisungen zu Aktualisierungsvorgängen. Das MS Word-Skript druckt Einstellungen, die nicht aktualisiert werden konnten. Der PrintException-Befehl kann nur innerhalb der APPLY-Funktion verwendet werden. Informationen zum optionalen zweiten Parameter finden Sie unter "Druckstufen". Wenn keine Druckstufen angegeben werden, ist der Parameter standardmäßig auf "GENERAL" eingestellt.
Zeichenfolge
PrintException (<string>);
PrintException ("Please remove the file c:\\windows\\netscapecommunication.ttt");
Ruft vom Quell- oder vom Zielcomputer den Wert eines Registrierungsschlüssels ab. Es können drei Parameter verwendet werden: der Schlüsselpfad, der Wertname und ein boolescher Wert. Die ersten beiden Parameter sind Zeichenfolgen und müssen angegeben werden. Der dritte Parameter ist eine optionale Angabe. Wenn der dritte Parameter aktiviert ist, sucht CA DMM erst auf dem Quellcomputer. Andernfalls wird die Suche auf dem Zielcomputer durchgeführt. Die Standardeinstellung ist "Deaktiviert". Der Befehl wird nicht ausgeführt, wenn der Wert nicht abgerufen werden konnte.
Hinweis: Der dritte boolesche Parameter kann nur bei der allgemeinen Funktion sowie bei den GENERAL- und APPLY-Funktionen verwendet werden. Wenn der dritte boolesche Parameter für andere Zwecke verwendet wird, treten Syntax- oder Laufzeitfehler auf.
Der Pfad des Schlüssels (Zeichenfolge)
Der Name des Werts (Zeichenfolge)
Der Rechner (Boolescher Wert)
Value = RetrieveValue(<Schlüsselpfad>, <Wertname>, [Boolean]);
RetrieveValue( "HKCU\\Software\\Microsoft\\Office\\8.0\\Common\\Toolbar", "Tooltips", SOURCE);
RetrieveValue( "HKCU\\Software\\Microsoft\\Office\\8.0\\Common\", "Tooltips", DESTINATION);
Hiermit weisen Sie CA DMM an, nach Beendigung einer Migration das Dialogfeld "Neustart erforderlich" anzuzeigen. Nutzen Sie diese Funktion für Skripts, die zur vollständigen Durchführung einer erfolgreichen Migration einen Neustart erfordern. Der einzige erforderliche Parameter ist ein boolescher Wert, mit dem angegeben wird, ob das Skript einen Neustart erfordert.
(Boolescher Wert)
RestartRequired(<Boolean>);
RestartRequired(true);
|
Copyright © 2014 CA Technologies.
Alle Rechte vorbehalten.
|
|