- ベストアンサー
レジストリのアドレスを指定してアドレスのキーを削除するフリーソフトをさがしてます
レジストリの指定のキーをたびたび削除したいのですが レジストリを普通に削除すると間違う可能性があり 危険なのでアドレスを指定しておいて手軽にそのキーを削除できるようなフリーソフトを探しています。 自分で"REI Sweeper"というのをみつけたのですが win95時代のだったのでつかえませんでした (こんな感じのが理想です) なにかよいツールか方法はありませんか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
★回答 [HKEY~~~WshTest] @=- "Test1"=- "Test2"=- "Test3"=- "Test4"=- 解説: ・『@』が既定の要素を表します。 ・『=』の次に『-』マイナス文字だけでよい。 ・ちなみに、『WshTest』のキーは削除しないのですよね。 ・以上。分かりますか?
その他の回答 (4)
- ZENO888
- ベストアンサー率49% (8944/18242)
>片方が消えてると 幾つか方法は有ると思いますが、文字列値(REG_SZ)や整数値(REG_DWORD)の場合なら、とりあえず消す前に、RegWriteメソッドでダミーのデータを書込って方法があります。 例: Set objShell = WScript.CreateObject("WScript.Shell") objShell.RegWrite "HKCU\WshTest\Test1", "Test #1" objShell.RegDelete "HKCU\WshTest\Test1" もし、キーが在れば上書きされますし、無ければ作成されますので。 ダミーのデーターは現状書き込まれてる値をコピーしておけばいいでしょう。 後は、一旦値を読んでキーが在るかどうか確認して、条件分で処理する方法ですが・・・・すいません、私もそんなに詳しくないので不明です。
お礼
なるほど ダミーでかきこんでって手もあるのですね ためになりました この質問してよかったなぁ 何回も回答ありがとうございました
- ZENO888
- ベストアンサー率49% (8944/18242)
>私にはむずかしくてわかりませんでした。 例題にあったように下記内容をメモ帳等で記載して、***.VBS 名(例えばTEST.VBS)で保存するだけです。 後は TEST.VBS をダブルクリックすれば、実行されます。 (キーが無い場合はエラー表示されます。) 参考例: Set objShell = WScript.CreateObject("WScript.Shell") objShell.RegDelete "HKCU\WshTest\Test1"
お礼
おーこちらでもレジストリを削除することができました。 ただtest1とtest2の片方が消えてると もう片方だけというのはエラーがでてしまってできない みたいですがこれはスクリプト特有で仕方がないことなのでしょうか? Set objShell = WScript.CreateObject("WScript.Shell") objShell.RegDelete "HKCU\WshTest\Test1" Set objShell = WScript.CreateObject("WScript.Shell") objShell.RegDelete "HKCU\WshTest\Test2" こんな風にしてみました。 もし時間に余裕があれば教えていただけませんか? 再回答ありがとうございました
- ZENO888
- ベストアンサー率49% (8944/18242)
WSHスクリプトでも、レジストリの削除は可能です。(OS標準機能) 下記参考 http://www.atmarkit.co.jp/fwin2k/operation/wsh07/wsh07_01.html http://www.atmarkit.co.jp/fwin2k/operation/wsh07/wsh07_02.html
お礼
ごめんなさい 私にはむずかしくてわかりませんでした。 回答ありがとうございました
- Oh-Orange
- ベストアンサー率63% (854/1345)
★『*.reg』ファイルをダブル・クリックすれば簡単だよ。 ・レジストリ・エディタで削除したいレジストリ・キーを選択して、 右メニューから『エクスポート』して保存して下さい。 ・そして、保存した『AdressDelete.reg』などをメモ帳などで開いて 下さい。必ず、メモ帳から開きますよ。右メニューなどで開かない で下さい。 ・そして、削除したいキーの先頭に『-』マイナス文字を追加します。 ・あと、キーの中の名前の項目は削除しておきます。分かりますか? ・キーの中の1つのデータは『"Name"=-』とすれば削除できます。 ・これで、保存した『AdressDelete.reg』などをダブル・クリックすれば いつでも簡単かつ、安全に削除してくれます。 ・以上。おわり。 例: [-HKEY_CURRENT_USER\Software\UserSoft\AdressDeleteKey] ←削除キー ↑ マイナス文字を先頭に追加(これでキーの削除指定になります) ※分からない点があるときは、また質問をして下さい。
お礼
質問が多少間違えてました 消したいのはキーではなく名前(値)のところでした。 図で示すとNO2さんの2つ目の参照URLの真ん中にあるレジストエディタの赤い丸2のところの[test2]だけを消したいのです。(上に書いてあったnameのところを試したのですが きえませんでした。 この図とメモ張のをあわせて説明すると メモ張の文字 [HKEY~~~WshTest] "Test2"=-dword:00000000 (↑名前のところだけにーを入れてみたところ何も起こりませんでした。 [-HKEY~~~WshTest] "Test2"=-dword:00000000 (↑HKEYの前にーをいれてさらに名前のところにもーを いれたところTest1など他のところも消えて既定だけのこってしまった。) どこがまちがっているのでしょうか? 回答ありがとうございました 再回答おまちしております
補足
お礼の文にちょっと追加です 消したいアイコンはtest4と同じアイコンでした。 関係ないかもしれませんが
お礼
おぉーわかりましたー。 できましたー。感動です 今回はすごく勉強になりましたー。 本当にありがとうございましたー。