CA DMM のスクリプトで使用する一般コマンドは以下のとおりです。
制御の流れを現在のループの最後に移動し、ループ後の最初の指示が実行されます。 これは return とは異なります。return の場合は、すべてのループおよび関数のスコープを中止します。 break はループ内でのみ機能します。
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
バイナリ文字列を ASCII 文字列に変換します。 変換するバイナリ データの文字列をパラメータとして必ず指定します。 2 番目のパラメータはオプションで、バイナリを指定します。 ブール値が True の場合、UNICODE 文字列に変換されます。 False の場合は、ASCII 文字列に変換されます。
バイナリ文字列
ブール値
ConvertBinaryToString(<値>,[ブール値]);
var result = ConvertBinaryToString("000FFFDCB709E")
ASCII 文字列をバイナリ文字列に変換します。 変換するASCII文字列をパラメータとして必ず指定します。 2 番目のパラメータはオプションです。 このパラメータが True の場合、UNICODE バイナリに変換されます。
ASCII 文字列
ブール値
ConvertStringToBinary(<値>,[ブール値]);
var result = ConvertStringToBinary("convert this string to binary")
スクリプトに関連付けられているアプリケーションを指定します。 スクリプトに関連付けることができるアプリケーションは 1 つのみです。 ソース コンピュータでは、Detection 関数からコールされます。 デスティネーション コンピュータでは、任意の場所からコールしてアプリケーション パスを解決することができます。 APPLICATIONPATH キーワードはインタプリタによって解決されます。このコールを発行するまで、APPLICATIONPATH キーワードは無効なので使用しないでください。 スクリプトでは、不要な処理を避けるために、Detection 関数内で Detect をコールする必要があります。
Detect のパラメータは、実行可能ファイル名とオプションのレジストリ キー値です。 どちらのパラメータにも文字列値を指定します。 レジストリ値のパス パラメータには、実行可能ファイルのパスが格納されたレジストリ値の完全パスを指定します。 レジストリ値がデフォルトのパラメータの場合、パスの末尾がキー名とスラッシュになっている必要があります(以下の例を参照)。 Detection 関数では、スクリプトで Detect のリターン コードをチェックし、スクリプトの処理を続行するか、終了するかを決定する必要があります。
実行可能ファイル名(文字列値)
レジストリのパス(文字列値)
Detect ( <実行可能ファイル名>, [レジストリのパス] );
if( Detect( "MyApp.exe", "HKLM\\Software\\Microsoft\\Windows\\CurrentVersion\\App Paths\\MyApp.exe\\" ) == false)
{
return;
}
if (Detect ( <実行可能ファイル名>) == false)
return;
実行可能ファイルまたはdllを実行します。 execute がコールするファイルまたは dll が見つからない場合、この関数は False を返します。
最初のパラメータは、実行する項目のパスです。 dll のパスの場合は、2 つのコロンのすぐ後に API 関数を指定する必要があります。 dll コールの形式は、PATH::APIFunctionName です。 dll に対するExecuteでは、以下の 2 種類の関数のみコールできます。
int FunctionName();
int FunctionName( const char * );
コールがコマンド ライン引数を取る場合は、引数を入力するか、空の文字列を入力します。
スクリプトが、実行可能ファイルが完了するまで待機するかどうかを示すブール値です。 dll コールの場合、このパラメータは無視されます。
/*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");
スクリプトを終了します。 このキーワードの後に値が続く場合は、その値がデバッグ ログおよびエラー ログに書き込まれます。 かっこはオプションです。
Exit ("Exiting because MS Word does not exist on machine.");
指定した文字列のすべての環境変数を展開し、結果を返します。
環境変数を含む文字列。
ExpandString(<文字列>);
var result = ExpandString("%WinDir%")
CommandID に基づいてエンジン関連のデータを返します。 マイグレーション中に誤った CommandID が渡された場合、エラーを返します。 マイグレーションの格納と適用の両方で、このコマンドを使用できます。
注: 製品の以前のバージョンでは、このコマンドを使用できません。 CA DMM の古いバージョンで、このコマンドを使用しようとすると、構文エラーが発生します。
マイグレーション対象として現在選択されているノード名(アプリケーションまたはシステム設定)を取得するための CommandID(たとえば、GET_CUR_SEL)
GetEngineData(<CommandID>);
var strNewPath = GetEngineData(GET_CUR_SEL)
新しいマシンにマップされた新しいファイル パスを返します。 このコマンドでは、一般的な「\\」文字以外の区切り文字が含まれたパスを指定することもできます。
古いファイル パス(文字列値)
パスの区切り文字(文字列値)
GetMappedPath( <古いファイル パス>, [<パスの区切り文字>] );
newPath = GetMappedPath("c:\\old path\\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*/
コンピュータのプラットフォームを返します。 戻り値は、WIN2000、WINXP、WINVI、または WIN7 です(「定義リスト」を参照)。 ソース マシンまたはデスティネーション マシンのどちらのプラットフォームを取得するかを示すパラメータを 1 つ指定できます。 このパラメータはオプションで、ブール値を指定します。 デフォルト値は False で、これはデスティネーション マシンを表わします。True は現在のマシンを表わします。
注: ブール値のパラメータは、General および Apply 関数内でだけ使用できます。 他の関数でこのパラメータを使用すると、構文エラーまたはランタイム エラーになります。
マシン(ブール値)
GetPlatform( [ブール値] );
if (GetPlatform(DESTINATION) == WINXP)
ApplyWinXPWord();
オペレーティング システムに対してクエリを実行して、それが Windows 2000、Windows XP、Windows Vista、Windows 7 のいずれであるかを調べます。 パラメータはオプションです。 True の場合、CA DMM はソース マシンの OS を取得します。False の場合はデスティネーション マシンの OS を取得します。 デフォルト値は False です。
注: General および Apply 関数の使用時は、このパラメータを True にのみ設定できます。 Store 関数でこのパラメータを使用すると、構文エラーまたはランタイム エラーが発生します。
マシン(ブール値)
Value = IsLikeNT([ブール値]);
IsLikeNT(SOURCE);
スクリプトの実行中、あるパスを別のパスにマップします。 パスのマッピングは、現在のスクリプト内の MapPath キーワードに続くすべての適用操作に適用されます。 このキーワードは、ApplyDirectory、ApplyFile、および ApplyMappedValue 操作内で <古いパス> に一致するすべてのパスを <新しいパス> で置き換えます。
古いパス(文字列)
新しいパス(文字列)
MapPath(<古いパス>, <新しいパス>);
MapPath("c:\\winword\\data", "c:\\winword\\Application Data");
ユーザにメッセージを表示します。 このコマンドには、文字列値パラメータを 1 つ指定します。 かっこはオプションです。
メッセージのテキスト(文字列値)
Message ( <文字列> );
Message ("help!");
設定ページに表示するオプションを作成します。 また、Store および Apply 関数もオプションに関連付けます。 ユーザがオプションを選択した場合、オプションに関連付けられている関数がインタプリタによって呼び出されます。 スラッシュを使用して、表示するステートメントの階層を指定できます。 たとえば、オプション「Microsoft Word\\Toolbar」では、ツリー ビューにオプションの 1 つとして「Microsoft Word」が表示され、その次の行にインデントされた状態で「Toolbar」が表示されます。
オプションのパス(文字列値)
Store関数の名前(文字列値)
Apply 関数の名前(文字列値)
「例: ローカライズされた設定ツリーの作成」を参照してください。
Option( <オプションのパス>, [Store 関数の名前], [Apply 関数の名前], [LanguageIndependentPath]);
Option ( "Microsoft Word\\Toolbar");
Option( "MicrosoftWord\\Toolbar\\Tooltips", "StoreTooltips", "ApplyTooltips", "msword\\toolbar\\tooltips");
ユーザが項目を選択した場合、Store および Apply 関数がインタプリタによって呼び出されます。 ユーザがオプションを選択した場合、オプションの親関数も呼び出されます。
メッセージをアクティビティ ログおよびデバッグ ログに出力します。 かっこはオプションです。 このコマンドには、文字列値パラメータを1つ指定します。 オプションの2番目のパラメータについては、「印刷レベル」を参照してください。 印刷レベルが指定されていない場合、パラメータはデフォルトで GENERAL になります。
文字列(文字列値)
print (<文字列>);
Print ("Warning: file win.ini will be overwritten");
例外ログに文字列を出力します。 例外ログは、CA DMM が実行できなかったマイグレーション手順を表示するのに使用します。 たとえば、Netscape Communicator のスクリプトは、アップグレード手順に関する詳細手順を例外ログに出力します。 MS Word のスクリプトは、アップグレードできなかった設定を出力します。 PrintException コマンドは、Apply 関数内でのみ使用できます。 オプションの 2 番目のパラメータについては、「印刷レベル」を参照してください。 印刷レベルが指定されていない場合、パラメータはデフォルトで GENERAL になります。
文字列(文字列値)
PrintException (<文字列>);
PrintException ("Please remove the file c:\\windows\\netscapecommunication.ttt");
ソース コンピュータまたはデスティネーション コンピュータから、レジストリ キーの値を取得します。 キーのパス、値の名前、ブール値の3つのパラメータを指定できます。 最初の 2 つのパラメータは必須で、文字列値を指定します。 3 番目のパラメータはオプションです。 3 番目のパラメータが True の場合、CA DMM はソース マシンを検索し、False の場合はデスティネーション マシンを検索します。 デフォルト値は False です。 値を取得できない場合は、False が返されます。
注: 3 番目のブール値のパラメータは、General および Apply 関数内でだけ使用できます。 3 番目のブール パラメータをそれ以外の関数で使用すると、構文エラーまたはランタイム エラーが発生します。
キーのパス(文字列値)
値の名前(文字列値)
マシン(ブール値)
Value = RetrieveValue(<キーのパス>, <値の名前>, [ブール値]);
RetrieveValue( "HKCU\\Software\\Microsoft\\Office\\8.0\\Common\\Toolbar", "Tooltips", SOURCE);
RetrieveValue( "HKCU\\Software\\Microsoft\\Office\\8.0\\Common\", "Tooltips", DESTINATION);
マイグレーションの最後に、再起動を要求するダイアログを表示するように指定します。 この関数は、正常にマイグレーションを完了するために再起動が必要なスクリプトで使用します。 必要なパラメータは、スクリプトで再起動が必要かどうかを示すブール値のみです。
(ブール値)
RestartRequired(<Boolean>);
RestartRequired(true);
|
Copyright © 2014 CA Technologies.
All rights reserved.
|
|