Windows Scripting Host (WSH)の VBScript/JScriptには、WScript.Shellオブジェクトからのレジストリ関数がありますが、キー/値の読み取り、書き込み、および削除に制限されています。レジストリ キーまたは値を読み取って結果を確認する以外に、その存在を取得する機能はありません。レジストリ値の型を取得する機能もありません。
WMI オブジェクト以外からレジストリにアクセスする他の方法は、パッケージ化されたREG.EXEコマンド ライン ツールをWScript.Shell.Exec関数経由で使用することです。これは、、、、、またはコマンド パラメータを使用QUERYして実行されます。を実行して使用方法の概要を表示するか、、 などを使用してコマンドの使用方法の詳細を表示します。ADDDELETEIMPORTEXPORTREG.EXEREG.EXE QUERY /?REG.EXE EXPORT /?
コマンドの出力にはQUERY、値のデータとそのタイプ (存在する場合) が表示されます。このEXPORTコマンドも使用できますが、結果がREGファイルに保存される点が異なります。の助けを借りて、ツールの結果をREG.EXEファイルにリダイレクトすることもできますCMD.EXE。例えば:
CMD.EXE /C REG.EXE QUERY "HKEY_CURRENT_USER\Control Panel\Cursors" > "reg output.txt"
の内容は、ファイルoutput.txtの内容とは異なることに注意してください。REGこのファイルは、Microsoft Knowledge Base KB310516REGで部分的に説明されている標準形式です。
ツールの終了コードをチェックし、REG.EXEその出力または生成されたREGファイルを解析することで、レジストリ値のタイプを取得できます。WScript.Shell可能であれば、オブジェクトを使用して実行できるレジストリ操作を使用し、パフォーマンスが懸念される場合に使用する必要があります。