あなたが唯一のプロキシを有効にすると、上のトグルするかどうかを知りたいと思っているように見えるとして、あなたの代わりにこれを使用することができます:
@Echo Off
Set "RR=HKCU"
Set "RK=Software\Microsoft\Windows\CurrentVersion\Internet Settings"
Set "RV=ProxyEnable"
For /F "Skip=1 Tokens=2*" %%A In ('Reg Query "%RR%\%RK%" /V "%RV%" 2^>Nul'
) Do If %%~B Gtr 0 Echo(%%B
Pause
インスタンスがそれを切り替えるためにのために望んでいた場合は、その後、オフの場合このようなもののように変更します。
@Echo Off
Set "RR=HKCU"
Set "RK=Software\Microsoft\Windows\CurrentVersion\Internet Settings"
Set "RV=ProxyEnable"
For /F "Skip=1 Tokens=2*" %%A In ('Reg Query "%RR%\%RK%" /V "%RV%" 2^>Nul'
) Do If %%~B Equ 0 Reg Add "%RR%\%RK%" /V "%RV%" /T REG_DWORD /D 0x1 /F>Nul
技術的にはあなたがちょうどそれを行うために、これを実行することができますが:
@Echo Off
Set "RR=HKCU"
Set "RK=Software\Microsoft\Windows\CurrentVersion\Internet Settings"
Set "RV=ProxyEnable"
Reg Add "%RR%\%RK%" /V "%RV%" /T REG_DWORD /D 0x1 /F>Nul
を
編集
次EnableHttp1_1 REG_DWORD 0x0
がFind
に送信されていたので、それが第一の方法Squashmanによって提案されたとzett42で改善、を使用して確認するには:あなたのアイデアを手に入れた
@Echo Off
Set "RR=HKCU"
Set "RK=Software\Microsoft\Windows\CurrentVersion\Internet Settings"
Set "RV=ProxyEnable"
Reg Query "%RR%\%RK%" /F 1 /E /T REG_DWORD|Find /I "%RV%">Nul 2>&1||(
Reg Add "%RR%\%RK%" /V "%RV%" /T REG_DWORD /D 0x1 /F>Nul)
/Fは検索を意味していた? – Squashman
@Squashman、 'Reg Query /? '、'/f検索するデータやパターンを指定します。文字列にスペースが含まれている場合は、二重引用符を使用します。つまり、キーを読んでいるだけなので、データを変数に設定して、If%変数でチェックすることはできませんか?Gtr 0comparison – Compo
これは私のために働いた: 'reg/f 1/t REG_DWORD | find/I "ProxyEnable" ' – Squashman