1

エクスポートされたレジストリ値である .reg (または .txt) ファイルを変更する方法を探しています。レジストリ ファイルは既にエクスポートできます。その 16 進値のほぼ中央にある 1 文字だけを変更する方法が必要なだけです。以下は、エクスポートされたレジストリ値の一部であり、太字は変更しようとしているものです。

"F"=hex:02,00,01,00,00,00,00,00,b4,42,39,6f,86,fd,cd,01,00,00,00,00,00,00, 00,\
00,d7,2f,f1,d8,0e,e9,cd,01,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00 ,00,\
f4,01,00,00,01,02,00,00, 11 ,02,00,00,00,00,00,00,00,00,2e,00,01,00,00, 00,00,\
00,00,00,88,52,35,00

その1110に変更し、それを reg ファイルに保存してからインポートする必要があります。FORコマンドが必要なようですが、FORコマンドについて読んだことがありますが、まだ混乱しています。

詳細情報: これは WinPE 3.0 環境で実行されます。この 16 進値は PC によって異なりますが、11 は常に同じ位置にあります。

さらに良いこと: バッチ/コマンド ファイル以外に、読み込まれたオフライン レジストリ ハイブを変更して同じことを達成できるものはありますか?

前もって感謝します
〜マイク

4

1 に答える 1

0

最初にそれを変数に入れます(私はXを使用します)

set x="F"=hex:02,00,01,00,00,00,00,00,b4,42,39,6f,86,fd,cd,01,00,00,00,00,00,00,00,\00,d7,2f,f1,d8,0e,e9,cd,01,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\f4,01,00,00,01,02,00,00,11,02,00,00,00,00,00,00,00,00,2e,00,01,00,00,00,00,\00,00,00,88,52,35,00

次に、11を10に置き換えることができます。

set x=%x:11=10%

注:スクリプトに11が2つある場合は、すべてを置き換えるため、このメソッドを実行しないでください。

11がもっとあるが、その11が同じ正確な場所にある場合(行に58文字だった場合、次回は58文字でなければなりません)、11に至るまでの文字を数えて、それを取得します。 X変数を作成し、1という名前の別の変数を作成すると、内容は次のようになります。

set 1=%x:~0,178%

次に、11の直後から最後までの文字数を調べ、変数に2という名前を付け、2を追加して、11をスキップするようにします。

set 2=%x:~180,70%

その後、この場合は10の間に新しい値を入力するだけなので、次のようになります。

set X=%1%10%2%

次に、X変数に新しい出力が返されます。

于 2013-02-09T22:02:42.957 に答える