前のトピック: RegCreateKey--レジストリ キーの作成次のトピック: RegDeleteValue - レジストリの値の削除


RegDeleteKey - レジストリ キーの削除

Windows で有効

RegDeleteKey 関数によって、特定のキーが削除されます。

関数の形式

RegDeleteKey(hKey as Integer, subkey as String) as Boolean
hKey

現在開かれているキーまたは事前定義されたキーを示します。すべての Windows プラットフォームで使用可能な事前定義された以下の値を使用できます。

HKEY_CLASSES_ROOT
HKEY_CURRENT_USER
HKEY_LOCAL_MACHINE
HKEY_USERS
subkey

パラメータで削除するキーの名前を示す文字列を指定します。 サブキーは、hKey によって指定されたキーのサブキーである必要があります。 subkey パラメータに空の文字列は使用できません。

この関数が正常に終了すると、TRUE が返されます。 キーが存在しないか、または現在別のアプリケーションによって開かれている場合、この関数によって FALSE が返されます。

subkeys

Windows 9x では、この関数はすべてのサブキーを削除します。 Windows NT および 2000 では、関数を実行する前にサブキーを個別に削除する必要があります。

例:

テスト構造:

HKLM\

\ Software

\ CA

\ 4 test only

\ var_6

\ dummy

Dim hkey1 as integer

ClrScr()


hkey1 = RegOpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE\CA\4 test only")
if hkey1 = 0 then
	Print("RegOpenKey failed.")
	exit
endif

if RegDeleteValue(hKey1) then
	Print("RegDeleteValue succeeded.")
else
	Print("RegDeleteValue failed.")
endif

if RegDeleteVariable(hKey1, "var_6") then
	Print("RegDeleteVariable for var_6 succeeded.")
else
	Print("RegDeleteVariable for var_6 failed.")
endif

RegCloseKey(hkey1)

hkey1 = RegOpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE\CA")

if hkey1 = 0 then
	Print("RegOpenKey failed.")
	exit
endif

if RegDeleteKey(hkey1, "dummy") then
	Print("Key dummy successfully deleted")
else
	Print("Key dummy deletion failed.")
endif

RegCloseKey(hkey1)

Messagebox("Check registry!", "desktop management scripting test")

hkey1 = RegOpenKey(HKEY_LOCAL_MACHINE, "SOFTWARE")
if hkey1 = 0 then
	Print("RegOpenKey failed.")
	exit
endif

if RegDeleteKey(hkey1, "CA\4 test only") then
	Print("Key ""CA\4 test only"" successfully deleted")

else
	Print("Key" "CA\4 test only" "deletion failed.")
endif

if RegDeleteKey(hkey1, "CA") then
	Print("Key CA successfully deleted")
else
	Print("Key CA deletion failed.")
endif

RegCloseKey(hkey1)