• 締切済み

(VBA)RegDeleteKeyがエラー

RegDeleteKeyについて教えてください ○削除するレジストリHKEY_LOCAL_MACHINE\SOFTWARE\XTSEGRSCESK\AAA ○ソース Public Const HKEY_LOCAL_MACHINE = &H80000002 Dim lRootKey As Long Dim sSubKey As String Dim lRet As Long lRootKey = HKEY_LOCAL_MACHINE sSubKey = "SOFTWARE\XTSEGRSCESK\AAA" lRet = RegDeleteKey(lRootKey, sSubKey) ○結果 RegDeleteKeyの戻り値が2 どこが悪いか教えてください お願いします

みんなの回答

  • kmb01
  • ベストアンサー率45% (63/138)
回答No.1

RedDeleteKeyの引数のSubKeyに"\"を含めることができないということだと思われます。 1つ上のキー(SOFTWARE\XTSEGRSCESK)をRegOpenKeyExで開いて、 それで得られたキーハンドルと"AAA"を引数にRegDeleteKeyを呼べばいいはず。

nagare
質問者

お礼

KEY_ALL_ACCESSの宣言を忘れていたので、宣言しましたらRegDeleteKeyの復帰値は2でした

nagare
質問者

補足

ありがとうございます 以下のように修正しました sSubKey = "SOFTWARE\XTSEGRSCESK" lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE, sSubKey, 0, KEY_ALL_ACCESS, lRootKey) lRet = RegDeleteKey(lRootKey, "AAA") RegOpenKeyExは正常終了 RegDeleteKeyの戻り値6です 勘違いしていますでしょうか?

関連するQ&A