SendNotifyMessageW 関数 (winuser.h)
指定したメッセージをウィンドウまたはウィンドウに送信します。 呼び出し元のスレッドによってウィンドウが作成された場合、SendNotifyMessage はウィンドウのウィンドウ プロシージャを呼び出し、ウィンドウ プロシージャがメッセージを処理するまで戻りません。 ウィンドウが別のスレッドによって作成された場合、SendNotifyMessage はメッセージをウィンドウ プロシージャに渡し、直ちに返します。ウィンドウ プロシージャがメッセージの処理を完了するまで待機しません。
構文
BOOL SendNotifyMessageW(
[in] HWND hWnd,
[in] UINT Msg,
[in] WPARAM wParam,
[in] LPARAM lParam
);
パラメーター
[in] hWnd
型: HWND
ウィンドウ プロシージャがメッセージを受信するウィンドウへのハンドル。 このパラメーターが HWND_BROADCAST ((HWND)0xffff) の場合、メッセージは、無効または非表示の未所有ウィンドウ、重複ウィンドウ、ポップアップ ウィンドウなど、システム内のすべての最上位ウィンドウに送信されます。ただし、メッセージは子ウィンドウに送信されません。
[in] Msg
型: UINT
送信するメッセージ。
システム提供のメッセージの一覧については、「System-Defined メッセージ」を参照してください。
[in] wParam
型: WPARAM
追加のメッセージ固有の情報。
[in] lParam
型: LPARAM
追加のメッセージ固有の情報。
戻り値
型: BOOL
関数が成功した場合、戻り値は 0 以外です。
関数が失敗した場合、戻り値は 0 です。 拡張エラー情報を取得するには、GetLastError
備考
以下の範囲のメッセージを非同期メッセージ関数 (
HWND_BROADCAST を使用して通信する必要があるアプリケーションでは、RegisterWindowMessage 関数を使用して、アプリケーション間通信用の一意のメッセージを取得する必要があります。
システムは、システム メッセージ (0 ~ (WM_USER-1) の範囲のメッセージ) に対してのみマーシャリングを実行します。 他のメッセージ (>= WM_USER) を別のプロセスに送信するには、カスタム マーシャリングを実行する必要があります。
手記
winuser.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして SendNotifyMessage を定義します。 エンコードに依存しないエイリアスをエンコードに依存しないコードと組み合わせて使用すると、コンパイルエラーやランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「関数プロトタイプの 規則」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされる最小サーバー | Windows 2000 Server [デスクトップ アプリのみ] |
ターゲット プラットフォーム の |
ウィンドウズ |
ヘッダー | winuser.h (Windows.h を含む) |
ライブラリ | User32.lib |
DLL | User32.dll |
API セットの | ext-ms-win-ntuser-message-l1-1-3 (Windows 10 バージョン 10.0.14393 で導入) |
関連項目
概念
PostMessage を
PostThreadMessage を
リファレンス
RegisterWindowMessage の
SendMessage を
SendMessageCallback の
SendNotifyMessage を