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


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

Отправляет данные из клиентского конца виртуального канала в партнерское приложение на сервере.

Службы удаленных рабочих столов предоставляют указатель на функцию VirtualChannelWrite в структуре CHANNEL_ENTRY_POINTS , передаваемой точке входа VirtualChannelEntry .

Синтаксис

VIRTUALCHANNELWRITE Virtualchannelwrite;

UINT VCAPITYPE Virtualchannelwrite(
  [in] DWORD openHandle,
  [in] LPVOID pData,
  [in] ULONG dataLength,
  [in] LPVOID pUserData
)
{...}

Параметры

[in] openHandle

Дескриптор виртуального канала. Это дескриптор, возвращаемый в параметре pOpenHandle функции VirtualChannelOpen .

[in] pData

Указатель на буфер, содержащий данные для записи.

[in] dataLength

Указывает количество байтов данных в буфере pData для записи.

[in] pUserData

Значение, определяемое приложением. Это значение передается в функцию VirtualChannelOpenEvent при завершении или отмене операции записи.

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

Если функция выполняется успешно, возвращаемое значение будет CHANNEL_RC_OK.

При возникновении ошибки функция возвращает одно из следующих значений.

Комментарии

Функция VirtualChannelWrite является асинхронной. После завершения операции записи функция VirtualChannelOpenEvent получает уведомление CHANNEL_EVENT_WRITE_COMPLETE. До получения этого уведомления вызывающий объект не должен освобождать или повторно использовать буфер pData , переданный в VirtualChannelWrite.

Значение, указанное для параметра pUserData , передается в функцию VirtualChannelOpenEvent после завершения или отмены операции записи. Эти данные можно использовать для идентификации операции записи.

Серверная надстройка на серверной части виртуального канала вызывает функцию WTSVirtualChannelRead для чтения данных, записанных вызовом VirtualChannelWrite .

Требования

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

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

VirtualChannelOpen

VirtualChannelOpenEvent

WTSVirtualChannelRead