RegDeleteKeyW 関数 (winreg.h)
サブキーとその値を削除します。 キー名では大文字と小文字は区別されないことに注意してください。
64 ビット Windows: WOW64 では、32 ビット アプリケーションは、64 ビット アプリケーションが表示するレジストリ ツリーとは別のレジストリ ツリーを表示します。 アプリケーションが代替レジストリ ビューのエントリを削除できるようにするには、 RegDeleteKeyEx 関数を使用します。
構文
LSTATUS RegDeleteKeyW(
[in] HKEY hKey,
[in] LPCWSTR lpSubKey
);
パラメーター
[in] hKey
開いているレジストリ キーへのハンドル。 このキーのアクセス権は、削除操作には影響しません。 アクセス権の詳細については、「 レジストリ キーのセキュリティとアクセス権」を参照してください。
このハンドルは、 RegCreateKeyEx または RegOpenKeyEx 関数によって返されます。または、次の 定義済みキーのいずれかになります。
- HKEY_CLASSES_ROOT
- HKEY_CURRENT_CONFIG
- HKEY_CURRENT_USER
- HKEY_LOCAL_MACHINE
- HKEY_USERS
[in] lpSubKey
削除するキーの名前。 hKey が識別するキーのサブキーである必要がありますが、サブキーを持つことはできません。 このパラメーターを NULL にすることはできません。
関数は、DELETE アクセス権を持つサブキーを開きます。
キー名では大文字と小文字は区別されません。
詳細については、「 レジストリ要素のサイズ制限」を参照してください。
戻り値
関数が成功した場合、戻り値は ERROR_SUCCESS です。
関数が失敗した場合、戻り値は Winerror.h で定義されている 0 以外のエラー コードです。 エラーの一般的な説明を取得するには、 formatMessage 関数を FORMAT_MESSAGE_FROM_SYSTEM フラグと共に使用できます。
注釈
削除されたキーは、最後のハンドルが閉じられるまで削除されません。
削除するサブキーにサブキーを含めてはいけません。 キーとそのすべてのサブキーを削除するには、サブキーを列挙して個別に削除する必要があります。 キーを再帰的に削除するには、 RegDeleteTree または SHDeleteKey 関数を 使用します。
例
この関数を使用する例については、「 サブキーを使用したキーの削除」を参照してください。
注意
winreg.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして RegDeleteKey を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | winreg.h (Windows.h を含む) |
Library | Advapi32.lib |
[DLL] | Advapi32.dll |