次の方法で共有


UnregisterClassA 関数 (winuser.h)

ウィンドウ クラスの登録を解除し、クラスに必要なメモリを解放します。

構文

BOOL UnregisterClassA(
  [in]           LPCSTR    lpClassName,
  [in, optional] HINSTANCE hInstance
);

パラメーター

[in] lpClassName

型: LPCTSTR

null で終わる文字列またはクラスアトム。 lpClassName が文字列の場合は、ウィンドウ クラス名を指定します。 このクラス名は、RegisterClass または RegisterClassEx 関数 以前の呼び出しによって登録されている必要があります。 ダイアログ ボックス コントロールなどのシステム クラスの登録を解除することはできません。 このパラメーターがアトムの場合は、RegisterClass または RegisterClassEx 関数 以前の呼び出しによって作成されたクラスアトムである必要があります。 atom は、lpClassNameの下位ワード 含まれている必要があります。高次ワードはゼロでなければなりません。

[in, optional] hInstance

型: HINSTANCE

クラスを作成したモジュールのインスタンスへのハンドル。

戻り値

型: BOOL

関数が成功した場合、戻り値は 0 以外です。

クラスが見つからない場合、またはクラスで作成されたウィンドウがまだ存在する場合、戻り値は 0 です。 拡張エラー情報を取得するには、GetLastError呼び出します。

備考

この関数を呼び出す前に、アプリケーションは、指定したクラスで作成されたすべてのウィンドウを破棄する必要があります。

アプリケーションが登録するすべてのウィンドウ クラスは、終了時に登録解除されます。

クラス アトムは、RegisterClassRegisterClassExによってのみ返される特殊な原子です。

.dll がアンロードされるときに、DLL によって登録されたウィンドウ クラスは登録解除されません。

手記

winuser.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして UnregisterClass を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされる最小サーバー Windows 2000 Server [デスクトップ アプリのみ]
ターゲット プラットフォーム の ウィンドウズ
ヘッダー winuser.h (Windows.h を含む)
ライブラリ User32.lib
DLL User32.dll
API セットの ext-ms-win-ntuser-windowclass-l1-1-0 (Windows 8 で導入)

関連項目

概念

リファレンス

RegisterClass の

RegisterClassEx の

ウィンドウ クラス