2012-01-19 11:11:41 +0000 2012-01-19 11:11:41 +0000
18
18

CMDスクリプトを使ってレジストリキーや値を削除する?

Windowsレジストリ内の特定のレジストリキーを削除させるために、既に作成されている.cmdスクリプトファイルを編集するにはどうすればいいのでしょうか?

第一に、これは可能なのでしょうか?

del "[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\CurrentVersion\SampleKey]"

この方法も私には効果がありませんでした:

cmd "\networkdrive\regfiles\deleteSampleKey.reg"
Windows Registry Editor Version 5.00
[
-HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
]

&001

&001

&001

&001

&001

&001

回答 (5)

26
26
26
2012-03-26 11:08:49 +0000

.regファイルを作成してインポートするよりも、REGコマンドを使用することをお勧めします。

reg delete "HKCU\Some\Registry\Path" /f

または reg delete "HKLM\Some\Registry\Path" /f

これらのコマンドは、バッチファイル(.cmd)に直接入力することができます。

15
15
15
2016-02-16 14:32:04 +0000

レジストリエントリの削除」の下にある ここで説明されている マイクロソフトによるここで説明されている のように、key を削除するには、次のようにキーの前にマイナス “-” を置くことで削除することができます:

[-HKEY_LOCAL_MACHINE\SOFTWARE\YourSoft\MyKey]

また、entry を削除するには、次のように = 文字の後にマイナス “-” を置きます:

[HKEY_LOCAL_MACHINE\SOFTWARE\YourSoft\MyKey]
"MyEntry"=-

_注: これらはキーの例に過ぎません。実際には動作しません。

4
4
4
2016-02-16 14:57:58 +0000

別のスクリプトを使用するのは避けたいと思いますが、これは REG コマンドを使用して.cmdファイルで行うことができます。例:

REG DELETE "HKEY_CURRENT_USER\SOFTWARE\SomeProgram"

これらのどちらも、値を削除する前に警告が表示されます。それを避けるためには、最後に /v "EntryName" 引数を使用する必要があります。

3
3
3
2012-01-19 11:25:35 +0000

私は以下の方法を使っています。これはWindows XP用の MRU リッパーの一部です。これは、CMDまたはショートカットから実行されるバッチファイルのテキストです。簡単なエコーリダイレクトを使ってレジストリファイルを作成し、それをインポートします。

REM ***START REGISTRY SHREDDER***
ECHO CREATING MRU REGISTRY
ECHO .
 ECHO > "%TMP%\MRUKILL.reg" Windows Registry Editor Version 5.00
ECHO >> "%TMP%\MRUKILL.reg" [-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Doc Find Spec MRU]
ECHO >> "%TMP%\MRUKILL.reg" [-HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FindComputerMRU]

REM ***IMPORT THAT REG TO WIPE OUT THEM KEYS AND VALUES****
regedit "%TMP%\MRUKILL.reg"

私はコーダーではなく、自分のためにバッチファイルを作っているだけなので、自分が書いたものを読むことすらできないことが多いのですが、他のことをするときのテンプレートとして使うことにします。また、echosの記号はレジストリのエントリを削除するために使われます。最後の行は省いて、インポート前に作成したファイルを見るのが良いかもしれません。インポートは黙って行うことができますが、私は自分では行いません。

免責事項: レジストリエントリを削除すると人がシステムに重大なダメージを与える可能性があるので、システムが故障したときにシステムを戻せるディスクイメージのバックアップが必要です。

適切なパーミッション、エレベーション、レジストリ内のいくつかのエントリは、その重要性のため、パーミッションを設定しなくても、ユーザーがそれらを破壊することを許可するだけではありません。

ここでは、遊びのために追加された「ユーザーに尋ねる」の部分です。

1
1
1
2014-08-08 05:42:27 +0000

私はWindows 7を使用していて、これは私がCMDを介して得たものです:

Fri 08/08/2014 8:13:51.72 | C:\Users\MrCMD
>reg.exe delete /?

REG DELETE KeyName [/v ValueName | /ve | /va] [/f]

  KeyName [\Machine\]FullKey
    Machine Name of remote machine - omitting defaults to the current machine.
             Only HKLM and HKU are available on remote machines.
    FullKey ROOTKEY\SubKey
    ROOTKEY [HKLM | HKCU | HKCR | HKU | HKCC]
    SubKey The full name of a registry key under the selected ROOTKEY.

  ValueName The value name, under the selected Key, to delete.
             When omitted, all subkeys and values under the Key are deleted.

  /ve delete the value of empty value name (Default).

  /va delete all values under this key.

  /f Forces the deletion without prompt.

Examples:

  REG DELETE HKLM\Software\MyCo\MyApp\Timeout
    Deletes the registry key Timeout and its all subkeys and values

  REG DELETE \ZODIAC\HKLM\Software\MyCo /v MTU
    Deletes the registry value MTU under MyCo on ZODIAC

または、私たちはいくつかのキーを削除したり、このアルゴリズムによっていくつかの値を変更することができると思います:

  1. 我々はファイル(File01.reg)に削除/変更したいキー/値のレジストリの場所をエクスポートします。2.適切なキー/値を編集/変更し、新しいファイル(File02.reg)に保存します。
Fri 08/08/2014 8:24:53.19 | C:\Users\mardir01
>reg.exe export /?

REG EXPORT KeyName FileName [/y]

  Keyname ROOTKEY[\SubKey] (local machine only).
    ROOTKEY [HKLM | HKCU | HKCR | HKU | HKCC]
    SubKey The full name of a registry key under the selected ROOTKEY.

  FileName The name of the disk file to export.

  /y Force overwriting the existing file without prompt.

Examples:

  REG EXPORT HKLM\Software\MyCo\MyApp File01.reg
    Exports all subkeys and values of the key MyApp to the file File01.reg

IMPORT レジストリを参照してください。:) :) :)