レジストリのサブキーを削除します。
Windows 95/98/Me: 指定されたキーが持つすべてのサブキーと値も含めて削除します。キーがサブキーや値を持たない場合にのみキーを削除するには、 SHDeleteEmptyKey 関数を使います。
Windows NT/2000/XP: 削除するキーがサブキーを持っていてはいけません。キーを削除するには、そのキーが持つサブキーを先に削除する必要があります。キーが持つすべてのサブキーと値も含めて削除するには、 SHDeleteKey 関数を使います。
LONG RegDeleteKeyA(
    HKEY    hKey,       // キーのハンドル
    PCTSTR  pszSubKey   // 削除するキーの名前
);
ADVAPI32.DLL
現在オープンしているキーのハンドルを指定します。このハンドルは DELETE アクセスを持っていなければいけません。
次の定義済みキーを指定することもできます。
| 値 | 定義済みキー | 
|---|---|
| 0x80000000 | HKEY_CLASSES_ROOT | 
| 0x80000001 | HKEY_CURRENT_USER | 
| 0x80000002 | HKEY_LOCAL_MACHINE | 
| 0x80000003 | HKEY_USERS | 
| 0x80000004 | Windows NT/2000/XP: HKEY_PERFORMANCE_DATA | 
| 0x80000005 | HKEY_CURRENT_CONFIG | 
| 0x80000006 | Windows 95/98/Me: HKEY_DYN_DATA | 
pszSubKey パラメータで指定されるキーは、このパラメータ指定されるキーのサブキーでなければなりません。
削除するサブキーの名前を表す文字列のアドレスを指定します。 0 (NULL) を指定することはできません。
Windows NT/2000/XP: 指定されるキーはサブキーを持っていてはいけません。
成功すると 0 (ERROR_SUCCESS) が返ります。
失敗すると 0 以外のエラーコードが返ります。このエラーコードと FORMAT_MESSAGE_FROM_SYSTEM フラグを指定して FormatMessage 関数を呼び出すことで、エラーメッセージを取得できます。
Windows 95 以降 / Windows NT 3.1 以降