2011年6月26日日曜日

CmdLibのプロパティ

プロパティ名:
ScriptingHost

概要:
実行するスクリプトアプリケーション

詳細:
実行するスクリプトアプリケーションを参照・指定することができます。
初期値は、WScriptです。

CmdLibのメソッド

メソッド:
validateDateTime

概要:
WMIで認識できる日付型文字列のチェック

構文:
validateDateTime(strDateTime)

パラメータ:
strDateTime...文字列
詳細:
strDateTimeに指定した文字列が、WMIで認識できる日付型として妥当かどうかをチェックします。
妥当であればTrue、そうでなければFalseを返します。

メソッド:
changeToWMIDateTime

概要:
WMIで認識できる日付型文字列に整形

構文:
changeToWMIDateTime(strDateTime, strTimeZone)

パラメータ:
strDateTime...日付型文字列
strTimeZone...タイムゾーン

詳細:
strDateTimeに指定した日付型文字列を、WMIで認識できる日付型に整形して返します。
strTimeZoneに指定した文字列は、整形した日付型文字列の最後尾に付加されます。

メソッド:
matchPattern

概要:
正規表現によるパターンチェックを行う

構文:
strMatchPattern(strMatchPattern, strPhrase)

パラメータ:
strMatchPattern...正規表現パターン
strPhrase...文字列

詳細:
strMatchPatternに指定した正規表現パターンに、strPhraseに指定した文字列が合致しているかどうかをチェックします。
合致した場合は、合致した件数を返します。何も合致しない場合は、0を返します。

メソッド:
vbPrintf

概要:
パラメータ付きのメッセージを表示

構文:
vbPrintf(strPhrase, args)

パラメータ:
strPhrase...表示するメッセージ(%1, %2, ...の形式でメッセージにパラメータを指定可能)
args...strPhraseにパラメータを指定した場合、そのパラメータの値

詳細:
strPhraseには、表示するメッセージを指定します。
%1, %2, %3, ...のようにパラメータを指定することができます。
strPharaseにパラメータを指定した場合、そのパラメータに渡す値を配列で指定します。

メソッド:
getPassword

概要:
パスワードを表示

構文:
getPassword()

詳細:※
使い方がわからない。
getPassword()メソッドを実行すると、「パスワードを入力してください」のメッセージが表示される。
InputBoxではなくメッセージボックスのため、パスワードを入力することができない。
また、「OK」ボタンしかない。
「OK」ボタンをクリックすると、「処理しています…」のメッセージボックスが表示される。
このメッセージボックスも、「OK」ボタンしかクリックすることができない。
戻り値も空。

メソッド:
wmiConnect

概要:
WMIに接続する

構文:
wmiConnect(strNameSpace, strUserName, strPassword, strServer, blnLocalConnection, objService)

パラメータ:
strNameSpace...名前空間
strUserName...ユーザー名
strPassword...パスワード
strServer...ホスト名
blnLocalConnection...ローカル接続ならTrue、そうでなければFalse(参照渡し)
objService...サービスのインスタンス(参照渡し)

詳細:
指定した条件でWMIに接続し、成功したらTrue、失敗したらFalseを返します。
strNameSpaceには、接続するWMIの名前空間を指定します。
strUserNameに接続するユーザー名、strPasswordに接続ユーザーのパスワード、strServerに接続するホスト名を指定します。
blnLocalConnectionには、ローカル接続であればTrue、そうでなければFalseを指定します。
指定したユーザー名、パスワード、ホスト名でWMIに接続できない場合、ローカルマシンであれば現在の接続ユーザー情報で再接続を試みます。
この時点でWMIに接続できた場合、blnLocalConnectionは必ずTrueを返します。
objServiceは、接続に成功した場合はサービスのインスタンスを返します。

メソッド:
getHostName

概要:
ホスト名を返す

構文:
getHostName(ObjService)

パラメータ:
ObjService...サービスのインスタンス

詳細:
ObjServiceに指定したサービスからホスト名を返します。
ホスト名を取得できなかった場合は、文字列"N/A"を返します。

メソッド:
getUserName

概要:
ユーザー名を返す

構文:
getUserName(ObjService)

パラメータ:
ObjService...サービスのインスタンス

詳細:
ObjServiceに指定したサービスからユーザー名を返します。
ユーザー名を取得できなかった場合は、文字列"N/A"を返します。

メソッド:
getDomainName

概要:
ドメイン名を返す

構文:
getDomainName(ObjeService)

パラメータ:
ObjService...サービスのインスタンス

詳細:
ObjServiceに指定したサービスからドメイン名を返します。
ドメイン名を取得できなかった場合は、文字列"N/A"を返します。

メソッド:
getArguments

概要:
パラメータに指定した配列とインデックスから該当する値を返す

構文:
getArguments(StrVarName, strVar, intArglter, blnAllowNegativeValues)

パラメータ:
StrVarName...エラーメッセージに出力するパラメータ(表示したい配列のフィールド名など)
strVar...指定したインデックスの値(参照渡し)
intArglter...配列のインデックス(参照渡し)
blnAllowNegativeValues...数値チェックを行う場合は、True、そうでなければFalseを指定

詳細:
StrVarNameは、指定した内容にエラーがあった場合、エラーメッセージに付加する文字列を指定します。
たとえば、表示したい配列のフィールド名などを指定します。
strVarには、指定したインデックスに存在した値を返します。
intArglterには、配列のインデックスを指定します。
blnAllowNegativeValuesには、数値チェックを行う場合はTrue、数値チェックを行わない場合はFalseを指定します。
指定した条件より配列から値を取得できた場合はTrue、指定した条件に誤りがあった場合はFalseを返します。
※
うまく動かない。
エラーメッセージは表示されないものの、戻り値はFalseとなる。

メソッド:
checkScript

概要:
実行されているスクリプトの種類を返す

構文:
checkScript()

詳細:
実行されているスクリプトの種類を返します。
cscriptなら2を、それ以外なら0を返します。

メソッド:
LengthinBytes

概要:
指定した文字列のバイト数を返す

構文:
LengthinBytes(strString)

パラメータ:
strString...文字列

概要:
strStringには、バイト数を調査する文字列を指定します。

メソッド:
trapError

概要:
エラーメッセージを表示する

構文:
trapError(strIn)

パラメータ:
strIn...任意の文字列

詳細:
エラーが発生している場合、エラーに該当するメッセージを表示して戻り値にTrueを返します。
エラーが発生していない場合は、戻り値にFalseを返します。
strInには、呼び出し元のメソッド名などの任意の文字列を指定します。

メソッド:
packString

概要:
文字列に空白を付加する

構文:
packString(strString, intWidth)

パラメータ:
strString...文字列
intWidth...バイト数

詳細:
strStringに指定した文字列に対し、intWidthに指定したバイト数に達するまで空白を付加します。
strStringに指定した文字列がすでにintWidthに指定したバイト数以上の場合、そのバイト数までの文字列をカットします。

メソッド:
getMaxStringLen

概要:
配列の中から最も長い文字列のバイト数を返す

構文:
getMaxStringLen(arrStrings)

構文:
getMaxStringLen(arrStrings)

パラメータ:
arrStrings...文字列型配列

詳細:
arrStringsに指定した文字列型配列のなかから最も長い文字列を検索し、そのバイト数を返します。

メソッド:
showResults

概要:
2次元配列の内容を指定したフォーマットで返す

構文:
showResults(arrHeader, arrResultsArray, arrMaxLength, strFormat, blnPrintHeader, arrBinHide)

パラメータ:
arrHeader...配列(ヘッダー)
arrResultsArray...配列(データ)
arrMaxLength...配列の最大長
strFormat...出力形式("LIST", "CSV", "TABLE")
blnPrintHeader...ヘッダー表示有無
arrBinHide...0以外を指定したインデックスは非表示にする

詳細:
arrHeaderには、配列のヘッダーを指定します。
arrResultsArrayには、内容を表示したい2次元配列を指定します。
arrMaxLengthには、各配列の表示時の最大長を指定します。
strFormatには、出力形式を指定します。
指定できる出力形式は、"LIST", "CSV", "TABLE"の3パターンです。
それぞれの出力サンプルは、次のとおりです。

LISTの場合
コード: 100
名前: テスト1
日付: 2010/10/01

コード: 200
名前: テスト2
日付: 2010/10/02

コード: 300
名前: テスト3
日付: 2010/10/03

CSVの場合
"コード","名前","日付"
"100","テスト1","2010/10/01"
"200","テスト2","2010/10/02"
"300","テスト3","2010/10/03"

TABLEの場合
コード 名前 日付
----------- ----------- -----------
100 テスト1 2010/10/01
200 テスト2 2010/10/02
300 テスト3 2010/10/03

blnPrintHeaderには、ヘッダーを表示するかしないかを指定します。
ヘッダーを表示する場合はTrue、表示しない場合はFalseを指定します。
フォーマットが"CSV"もしくは"TABLE"にした場合のみ、効果があります。
arrBlnHideにて、0以外を指定したインデックスは非表示となります。

2011年6月2日木曜日

Microsoft.CmdLibについて

Microsoft.CmdLib
    対象OS…WindowsXP

    概要…VBS Library

    パス…C:\WINDOWS\system32\cmdlib.wsc

    全メソッド…
        checkScript
        vbPrintf
        getHostName
        getUserName
        getDomainName
        LengthinBytes
        getPassword
        trapError
        getArguments
        wmiConnect
        packString
        getMaxStringLen
        showResults
        validateDateTime
        changeToWMIDateTime
        matchPattern

    全プロパティ…
        ScriptingHost

    その他…
        拡張子(.wsc)。Windows Script Componentの略。
        実体は、XMLファイル。UTF-8形式で保存されている。