WTSSendMessageA 函式 (wtsapi32.h)
在指定遠端桌面服務會話的用戶端桌面上顯示消息框。
語法
BOOL WTSSendMessageA(
[in] HANDLE hServer,
[in] DWORD SessionId,
[in] LPSTR pTitle,
[in] DWORD TitleLength,
[in] LPSTR pMessage,
[in] DWORD MessageLength,
[in] DWORD Style,
[in] DWORD Timeout,
[out] DWORD *pResponse,
[in] BOOL bWait
);
參數
[in] hServer
RD 工作階段主機伺服器的句柄。 指定由 WTSOpenServer 函式開啟的句柄,或指定 WTS_CURRENT_SERVER_HANDLE 來指出應用程式執行所在的 RD 會話主機伺服器。
[in] SessionId
遠端桌面服務會話標識碼。 若要指出目前的工作階段,請指定 WTS_CURRENT_SESSION。 您可以使用 WTSEnumerateSessions 函式來擷取指定 RD 工作階段主機伺服器上所有工作階段的識別碼。
若要將訊息傳送至其他使用者的會話,您必須擁有訊息許可權。 如需詳細資訊,請參閱 遠端桌面服務
權限。 若要修改會話的許可權,請使用遠端桌面服務組態系統管理工具。
[in] pTitle
消息框標題列的 Null 終止字串指標。
[in] TitleLength
標題欄字串的長度,以位元組為單位。
[in] pMessage
包含要顯示之訊息之 Null 終止字串的指標。
[in] MessageLength
訊息字串的長度,以位元組為單位。
[in] Style
消息框的內容和行為。 此值通常會 MB_OK。 如需值的完整清單,請參閱 MessageBox 函式的 uType 參數。
[in] Timeout
WTSSendMessage 函式等候使用者回應的時間,以秒為單位。 如果使用者未在超時時間間隔內回應,pResponse 參數會傳回 IDTIMEOUT。 如果 Timeout 參數為零,WTSSendMessage 無限期等候用戶回應。
[out] pResponse
接收用戶回應之變數的指標,可以是下列其中一個值。
IDABORT (3)
中止
IDCANCEL (2)
取消
IDCONTINUE (11)
繼續
伊丁諾爾 (5)
忽略
IDNO (7)
否
IDOK (1)
確定
IDRETRY (4)
重試
IDTRYAGAIN (10)
再試一次
IDYES (6)
是
IDASYNC (32001 (0x7D01)
bWait 參數 FALSE,因此函式會傳回而不等待回應。
IDTIMEOUT (32000 (0x7D00))
bWait 參數 TRUE 和逾時間隔經過。
[in] bWait
如果 TRUE,WTSSendMessage 不會傳回,直到用戶回應或逾時時間間隔為止。 如果 Timeout 參數為零,則函式不會傳回,直到使用者響應為止。
如果 FALSE,則函式會立即傳回 ,而 pResponse 參數會傳回 IDASYNC。 針對不需要將使用者的回應傳回給呼叫程式的簡單資訊訊息,例如列印作業通知訊息,請使用此方法。
傳回值
如果函式成功,則傳回值是非零值。
如果函式失敗,傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError。
言論
注意
wtsapi32.h 標頭會根據 UNICODE 預處理器常數的定義,將 WTSSendMessage 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | Windows Vista |
支援的最低伺服器 | Windows Server 2008 |
目標平臺 | 窗戶 |
標頭 | wtsapi32.h |
連結庫 | Wtsapi32.lib |
DLL | Wtsapi32.dll |