- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBにて特定のレジストリキーの削除について)
VBにて特定のレジストリキーの削除について
このQ&Aのポイント
- PC起動時に特定のキー以下すべてを削除するツールを検討しています。
- HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB\VID_****&PID_****が目的のキーです。
- OpenSubKeyもしくはCreateSubKeyにて開けばよいことはわかりましたがSecurityExceptionが発生して開くことができません。HKEY_LOCAL_MACHINE\SYSTEM\は問題なく開くことができています。VB側ではなくむしろレジストリ(Windows側)の制約なのでしょうか。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
レジストリにもアクセス権が設定されています。 当該レジストリは、システムが接続された機器類を認識して作成しているので、勝手に削除できないようにEveryoneに対して読み取りのアクセス権しか与えられていません。 どうしても削除したいのであれば、アクセス権を変更してから削除することになります。 レジストリのアクセス権は、通常使用するregeditではなくregedt32で確認できます。 ただし、作成されたキーを削除したからといって必ずしもレジストリが肥大することを避けることにはならないはずです。レジストリは削除しても「削除された」というフラグが付くだけで、勝手にレジストリファイルが小さくなったりはしないはずです。