共用方式為


WTSSendMessageW 函式 (wtsapi32.h)

在指定遠端桌面服務會話的用戶端桌面上顯示消息框。

語法

BOOL WTSSendMessageW(
  [in]  HANDLE hServer,
  [in]  DWORD  SessionId,
  [in]  LPWSTR pTitle,
  [in]  DWORD  TitleLength,
  [in]  LPWSTR 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

如果 TRUEWTSSendMessage 不會傳回,直到用戶回應或逾時時間間隔為止。 如果 Timeout 參數為零,則函式不會傳回,直到使用者響應為止。

如果 FALSE,則函式會立即傳回 ,而 pResponse 參數會傳回 IDASYNC。 針對不需要將使用者的回應傳回給呼叫程式的簡單資訊訊息,例如列印作業通知訊息,請使用此方法。

傳回值

如果函式成功,則傳回值是非零值。

如果函式失敗,傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

言論

注意

wtsapi32.h 標頭會根據 UNICODE 預處理器常數的定義,將 WTSSendMessage 定義為自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows Vista
支援的最低伺服器 Windows Server 2008
目標平臺 窗戶
標頭 wtsapi32.h
連結庫 Wtsapi32.lib
DLL Wtsapi32.dll

另請參閱

MessageBox