VirtualChannelWrite (Windows Embedded CE 6.0)
1/6/2010
This function sends data from the client end of a virtual channel to a partner application on the server end. It copies the data to one or more network buffers as necessary, and ensures that data is sent to the Terminal Server on the right context.
Syntax
UINT VCAPITYPE VirtualChannelWrite(
DWORD openHandle,
LPVOID pData,
ULONG dataLength,
LPVOID pUserData
);
Parameters
- openHandle
[in] Handle to the virtual channel. This is the handle returned in the pOpenHandle parameter of the VirtualChannelOpen function.
- pData
[in] Pointer to a buffer containing the data to write.
- dataLength
[in] Specifies the size, in bytes, of the data in the pData buffer.
- pUserData
[in] Pointer to an application-defined value. This value is passed to your VirtualChannelOpenEvent function when the write operation is completed or canceled.
Return Value
The following table shows the return values for this function.
Value | Description |
---|---|
CHANNEL_RC_OK |
Function succeeded. |
CHANNEL_RC_NOT_CONNECTED |
The virtual channel is not connected. |
CHANNEL_RC_BAD_CHANNEL_HANDLE |
The openHandle parameter is not valid. |
CHANNEL_RC_UNKNOWN_CHANNEL_NAME |
The channel is unregistered. |
CHANNEL_RC_NO_MEMORY |
Indicates an out-of-memory condition. |
CHANNEL_RC_NULL_DATA |
The pData parameter is not valid. |
CHANNEL_RC_ZERO_LENGTH |
The dataLength parameter is zero. |
Remarks
The VirtualChannelWrite function is asynchronous. When the write operation has been completed, your VirtualChannelOpenEvent function receives a CHANNEL_EVENT_WRITE_COMPLETE notification. Until that notification is received, the caller must not free or reuse the pData buffer passed to VirtualChannelWrite.
The value specified for the pUserData parameter is passed to your VirtualChannelOpenEvent function when the write operation is completed or canceled. You can use this data to identify the write operation.
Requirements
Header | cchannel.h |
Library | Developer Implemented |
Windows Embedded CE | Windows CE .NET 4.0 and later |