Share via


RegisterClassA 関数 (winuser.h)

CreateWindow 関数または CreateWindowEx 関数の呼び出しで後続の使用のためにウィンドウ クラス登録します。

メモRegisterClass 関数は RegisterClassEx 関数に置き換わりました。 ただし、クラスの小さいアイコンを設定する必要がない場合は、 RegisterClass を引き続き使用できます。
 

構文

ATOM RegisterClassA(
  [in] const WNDCLASSA *lpWndClass
);

パラメーター

[in] lpWndClass

型: const WNDCLASS*

WNDCLASS 構造体へのポインター。 構造体を関数に渡す前に、適切なクラス属性を入力する必要があります。

戻り値

種類: ATOM

関数が成功した場合、戻り値は登録されているクラスを一意に識別するクラス atom です。 この atom は、CreateWindowCreateWindowExGetClassInfo、GetClassInfoExFindWindowFindWindowExUnregisterClass 関数、および IActiveIMMap::FilterClientWindows メソッドでのみ使用できます。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

RegisterClassA を使用してウィンドウ クラスを登録した場合、アプリケーションは、作成されたクラスのウィンドウで、テキストまたは文字パラメーターを含むメッセージが ANSI 文字セットを使用することをシステムに通知します。RegisterClassW を使用して登録すると、アプリケーションはメッセージのテキスト パラメーターを Unicode として渡すように要求します。 IsWindowUnicode 関数を使用すると、アプリケーションは各ウィンドウの性質に対してクエリを実行できます。 ANSI 関数と Unicode 関数の詳細については、「 関数プロトタイプの規則」を参照してください。

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

DLL がアンロードされるときに、DLL によって登録されたウィンドウ クラスは登録解除されません。 DLL は、アンロード時にそのクラスを明示的に登録解除する必要があります。

例については、「 Window プロシージャと Window クラスの関連付け」を参照してください。

注意

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

要件

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

関連項目

概念

CreateWindow

CreateWindowEx

Findwindow

FindWindowEx

GetClassInfo

GetClassInfoEx

GetClassName

リファレンス

RegisterClassEx

UnregisterClass

WNDCLASS

ウィンドウ クラス

WindowProc