次の方法で共有


WTSRegisterSessionNotification 関数 (wtsapi32.h)

指定したウィンドウを登録して、セッション変更通知を受信します。

構文

BOOL WTSRegisterSessionNotification(
  [in] HWND  hWnd,
  [in] DWORD dwFlags
);

パラメーター

[in] hWnd

セッション変更通知を受信するウィンドウのハンドル。

[in] dwFlags

受信するセッション通知を指定します。 このパラメーターには、次の値のいずれかを指定できます。

NOTIFY_FOR_THIS_SESSION

hWnd パラメーター値によって識別されるウィンドウによってアタッチされたセッションに関連するセッション通知のみが受信されます。

NOTIFY_FOR_ALL_SESSIONS

すべてのセッション通知が受信されます。

戻り値

関数が成功した場合、戻り値は TRUE になります。 それ以外の場合は FALSE です。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

リモート デスクトップ サービスの依存サービスが開始される前にこの関数が呼び出されると、 RPC_S_INVALID_BINDING エラー コードが返される可能性があります。 Global\TermSrvReadyEvent グローバル イベントが設定されると、すべての依存サービスが開始され、この関数を正常に呼び出すことができます。

セッション変更通知は、 WM_WTSSESSION_CHANGE メッセージの形式で送信されます。 これらの通知は、この関数を使用して登録されたウィンドウにのみ送信されます。

ウィンドウでこれらの通知が不要になった場合は、破棄される前に WTSUnRegisterSessionNotification を呼び出す必要があります。 この関数を呼び出すたびに、 WTSUnRegisterSessionNotification への対応する呼び出しが必要です。

この関数で渡されたウィンドウ ハンドルが既に登録されている場合、 dwFlags パラメーターの値は無視されます。

サービスからセッション変更通知を受信するには、 HandlerEx 関数を使用します。

要件

要件
サポートされている最小のクライアント Windows Vista
サポートされている最小のサーバー Windows Server 2008
対象プラットフォーム Windows
ヘッダー wtsapi32.h
Library Wtsapi32.lib
[DLL] Wtsapi32.dll
API セット ext-ms-win-session-wtsapi32-l1-1-0 (Windows 8で導入)

こちらもご覧ください

HandlerEx

WM_WTSSESSION_CHANGE

WTSGetActiveConsoleSessionId

WTSRegisterSessionNotificationEx

WTSSESSION_NOTIFICATION

WTSUnRegisterSessionNotification