今までレジストリファイルによりレジストリキーや値の削除できないと思いこんでいましたが、PONKIKKI 様から寄せられた情報によりそれが出来ることがわかりました。ここではそれを説明します。
通常のレジストリファイル
REGEDIT4 [HKEY_CURRENT_USER\Software\test] @="あやや" "name1"="string" "name2"=hex:01,23,45,67,89 "name3"=dword:12345678 |
値を削除するレジストリファイル
REGEDIT4 [HKEY_CURRENT_USER\Software\test] @=- "name1"=- "name2"=- "name3"=- |
キーを削除するレジストリファイル
REGEDIT4 [-HKEY_CURRENT_USER\Software\test] |
つまり"-"を付けると削除という意味になるようです。この中で"@=-"はOSによりうまくいかない場合があるようです。作者の環境によるテスト結果を示します。
OS | IE | 結果 | @=- |
---|---|---|---|
Windows 95 | 3.02 | × | × |
Windows 98 Second Edition | 6.0 | ○ | × |
Windows Me | 5.5 | ○ | × |
Windows NT4.0 | 3.0 | ○ | × |
Windows 2000 | 5.0 | ○ | ○ |
Windows XP Home Edition | 6.0 | ○ | ○ |
Windows XP Professional Edition | 6.0 | ○ | ○ |
Windows Vista | 7.0 | ○ | ○ |