BroadcastSystemMessageA 函式 (winuser.h)
將訊息傳送給指定的收件者。 收件者可以是應用程式、可安裝驅動程式、網路驅動程式、系統層級設備驅動器,或這些系統元件的任何組合。
若要在定義要求時接收其他資訊,請使用 BroadcastSystemMessageEx 函式。
語法
long BroadcastSystemMessageA(
[in] DWORD flags,
[in, out, optional] LPDWORD lpInfo,
[in] UINT Msg,
[in] WPARAM wParam,
[in] LPARAM lParam
);
參數
[in] flags
類型:DWORD
廣播選項。 此參數可以是下列其中一或多個值。
[in, out, optional] lpInfo
類型:LPDWORD
包含和接收郵件收件者相關信息之變數的指標。
當函式傳回時,此變數會接收這些值的組合,以識別哪些收件者實際收到郵件。
如果此參數 NULL,則函式會廣播至所有元件。
此參數可以是下列其中一或多個值。
價值 | 意義 |
---|---|
|
廣播至所有系統元件。 |
|
廣播到所有桌面。 需要 SE_TCB_NAME 許可權。 |
|
廣播至應用程式。 |
[in] Msg
類型:UINT
要傳送的訊息。
如需系統提供的訊息清單,請參閱 System-Defined 訊息。
[in] wParam
類型:WPARAM
其他訊息特定資訊。
[in] lParam
類型:LPARAM
其他訊息特定資訊。
傳回值
類型:長
如果函式成功,傳回值會是正值。
如果函式無法廣播訊息,傳回值為 –1。
如果 dwFlags 參數為 BSF_QUERY,且至少傳回一個收件者 BROADCAST_QUERY_DENY 對應郵件,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
言論
如果未指定 BSF_QUERY,函式會將指定的郵件傳送給所有要求的收件者,忽略這些收件者傳回的值。
系統只會對系統訊息進行封送處理(範圍 0 到 (WM_USER-1) 中的訊息。 若要將其他訊息 (這些 >= WM_USER) 傳送至另一個進程,您必須執行自定義封送處理。
如需範例,請參閱 終止行程。
注意
winuser.h 標頭會將 BroadcastSystemMessage 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows 2000 Professional [僅限傳統型應用程式] |
支援的最低伺服器 | Windows 2000 Server [僅限傳統型應用程式] |
目標平臺 | 窗戶 |
標頭 | winuser.h (包括 Windows.h) |
連結庫 | User32.lib |
DLL | User32.dll |
另請參閱
概念
參考