こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

(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

どこが悪いか教えてください
お願いします

投稿日時 - 2005-04-06 14:47:46

QNo.1314953

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

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

投稿日時 - 2005-04-06 15:41:37

補足

ありがとうございます
以下のように修正しました

sSubKey = "SOFTWARE\XTSEGRSCESK"
lRet = RegOpenKeyEx(HKEY_LOCAL_MACHINE, sSubKey, 0, KEY_ALL_ACCESS, lRootKey)
lRet = RegDeleteKey(lRootKey, "AAA")

RegOpenKeyExは正常終了
RegDeleteKeyの戻り値6です

勘違いしていますでしょうか?

投稿日時 - 2005-04-06 15:55:22

お礼

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

投稿日時 - 2005-04-06 16:03:36

あなたにオススメの質問