SHRegDeleteEmptyUSKey 空のユーザ指定キーを削除

Cの宣言:

LONG SHRegDeleteEmptyUSKey(
	HUSKEY hUSKey,
	LPCSTR SubKeyName,
	SHREGDEL_FLAGS Flags);

説明:

hUSKeyで指定されたユーザ指定キーのSubKeyNameで指定された空のサブキーを削除する。

引数の意味は以下の通り。
hUSKey ユーザ指定キーのハンドル。
SubKeyName 削除するサブキーの名前。
Flags 削除方法を指定するフラグ。後述の表を参照。

Flagsには以下のいずれかのフラグを指定可能。
SHREGDEL_DEFAULT HKEY_CURRENT_USERのキーを削除する。HKEY_CURRENT_USERにキーが存在しない場合は、HKEY_LOCAL_MACHINEのキーを削除する。
SHREGDEL_HKCU HKEY_CURRENT_USERのキーを削除する。
SHREGDEL_HKLM HKEY_LOCAL_MACHINEのキーを削除する。
SHREGDEL_BOTH HKEY_CURRENT_USERおよびHKEY_LOCAL_MACHINEのキーを削除する。

戻り値は、関数の実行結果を表すエラーコードである。

Cのサンプル:

HKEY_CURRENT_USERおよびHKEY_LOCAL_MACHINEにある“Software\masapico\test”という空のキーを削除する。
void DeleteUSKey(void)
{
	HUSKEY hUSKey;

	/* “Sotware”キーをユーザ指定キーとしてオープンする */
	SHRegOpenUSKey(
		"Software",
		KEY_ALL_ACCESS,
		NULL,
		&hUSKey,
		FALSE);

	/* “Software”のサブキーである“masapico\test”という空のキーを削除 */
	SHRegDeleteEmptyUSKey(
		hUSKey,
		"masapico\\test",
		SHREGDEL_BOTH);

	/* 終了 */
	SHRegCloseUSKey(hUSKey);
}

(original text:1999/09/05 更新)

本ドキュメントの内容は保証しません。本ドキュメントによって生じた結果について、一切の責任を負いません。