二重引用符でレジストリ値を追加するか、Reg.exeを使用して拡張可能な変数データを追加します

組み込みのreg.exeコンソールツールを使用すると、レジストリキーと値を(ハイブとして)追加、削除、エクスポート、または保存できます。 reg.exeツールを使用してレジストリ値を追加する場合、二重引用符または環境変数を使用してデータを渡し、文字どおりレジストリに追加する方法について疑問に思うかもしれません。

この記事では、reg.exeコンソールツールを使用して、二重引用符と環境変数を渡す(フォルダーパスを展開または解決せずに)レジストリ値を作成する方法について説明します。

REG.exeを使用して、二重引用符でレジストリ値データを追加します。

次のケースを考えてください。 二重引用符でデータを"d:\my projects\runx64.exe"設定して(default)に書き込む必要がある場合は、円記号を使用して内側の二重引用符をエスケープする必要があります。

例:

 REG ADD HKCR \ boxfile \ shell \ command / ve / t REG_SZ / d "\" d:\ my projects \ runx64.exe \ "" \ "%1 \" " 

次のように、データを囲む二重引用符をエスケープしない場合:

 REGはHKCR \ boxfile \ shell \ command / ve / t REG_SZ / d "d:\ my projects \ runx64.exe%1"を追加します 

コマンドは正常に完了しますが、二重引用符なしで次のレジストリキー/値を作成することになります。

例2:

 REG追加HKCR \ boxfile \ shell \ command / ve / t REG_SZ / d "\" d:\ my projects \ runx64.exe \ "-runmax" \ "%1 \" " 

REG.exeを使用して、拡張可能な文字列データを含むレジストリ値を追加します

REG_EXPAND_SZレジストリ値タイプを追加し、指定されたとおりに( 変数を展開せずに )拡張可能な文字列を渡すには、 %記号と共にキャレット^記号を使用する必要があります。

例:

 REG ADD "HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Shell Folders" / vデスクトップ/ t REG_EXPAND_SZ / d ^%USERPROFILE ^%\ Desktop 

次のコマンドラインの例のように、キャレット記号を使用しない場合:

 REG ADD "HKCU \ Software \ Microsoft \ Windows \ CurrentVersion \ Explorer \ User Shell Folders" / vデスクトップ/ t REG_EXPAND_SZ / d%USERPROFILE%\ Desktop 

次の図に示すように、環境変数または拡張可能な文字列は、フォルダーパスに自動的に拡張または解決されます。

この記事が、 reg.exeコマンドラインを使用して、二重引用符と拡張可能な変数を含む複雑なコマンドライン引数をレジストリにreg.exeたことをreg.exeています。

関連記事