Поделиться через


функция обратного вызова CHANNEL_INIT_EVENT_FN (cchannel.h)

Определяемая приложением функция обратного вызова, которая вызывается службами удаленных рабочих столов для уведомления клиентской библиотеки DLL о событиях виртуального канала.

Тип PCHANNEL_INIT_EVENT_FN определяет указатель на эту функцию обратного вызова. VirtualChannelInitEvent — это заполнитель для имени определяемой приложением или библиотекой функции.

Синтаксис

CHANNEL_INIT_EVENT_FN ChannelInitEventFn;

VOID VCAPITYPE ChannelInitEventFn(
  [in] LPVOID pInitHandle,
  [in] UINT event,
  [in] LPVOID pData,
  [in] UINT dataLength
)
{...}

Параметры

[in] pInitHandle

Дескриптор клиентского подключения. Это дескриптор, возвращаемый в параметре ppInitHandle функции VirtualChannelInit .

[in] event

Указывает событие, вызвавшее уведомление. Этот параметр может принимать одно из указанных ниже значений.

CHANNEL_EVENT_INITIALIZED (0)

Завершена инициализация клиента подключения к удаленному рабочему столу (RDC). Параметр pData имеет значение NULL.

CHANNEL_EVENT_CONNECTED (1)

Установлено подключение к серверу узла сеансов удаленных рабочих столов, который поддерживает виртуальные каналы. Параметр pData является указателем на строку, завершаемую значением NULL, с именем сервера.

CHANNEL_EVENT_V1_CONNECTED (2)

Установлено подключение к серверу узла сеансов удаленных рабочих стола, который не поддерживает виртуальные каналы. Параметр pData имеет значение NULL.

CHANNEL_EVENT_DISCONNECTED (3)

Подключение к серверу узла сеансов удаленных рабочих стола отключено. Параметр pData имеет значение NULL.

CHANNEL_EVENT_TERMINATED (4)

Работа клиента завершена. Параметр pData имеет значение NULL.

CHANNEL_EVENT_REMOTE_CONTROL_START (5)

Запущена операция удаленного управления. Параметр pData имеет значение NULL.

CHANNEL_EVENT_REMOTE_CONTROL_STOP (6)

Операция удаленного управления была прервана. Параметр pData является указателем на строку, завершающуюся значением NULL, содержащую имя сервера.

[in] pData

Указатель на дополнительные данные для события. Тип данных зависит от события, как описано ранее в описаниях событий.

[in] dataLength

Задает размер данных в байтах в буфере pData .

Возвращаемое значение

Эта функция не возвращает значение.

Комментарии

Клиентская библиотека DLL использует функцию VirtualChannelInit Для регистрации функции VirtualChannelInitEvent в службах удаленных рабочих столов.

Эта функция повторно используется для каждого дескриптора. Функция может вызываться во время выполнения, но не на одном дескрипторове более одного раза.

Эта функция вызывается только после завершения VirtualChannelEntry .

CHANNEL_EVENT_CONNECTED и CHANNEL_EVENT_DISCONNECTED уведомления о событиях не будут отправляться при переносе подключения в другой сеанс. Однако подключаемый модуль на стороне сервера, который управляет сеансом, в который передается подключение, получит уведомление о повторном подключении. Для передачи подключений можно использовать средство на стороне сервера, например Tscon.exe. Дополнительные сведения об уведомлениях о повторном подключении см. в разделе Мониторинг сеансов Connections и отключениях.

Если подключаемый модуль пользовательского режима должен быть уведомлен о повторном подключении (например, если необходимо сбросить состояние), подключаемый модуль на стороне сервера должен отправить клиенту уведомление. В этом уведомлении должен использоваться протокол, используемый подключаемыми модулями для взаимодействия друг с другом.

Требования

Требование Значение
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header cchannel.h

См. также раздел

VirtualChannelInit