今までレジストリファイルによりレジストリキーや値の削除できないと思いこんでいましたが、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 | ○ | ○ |