WTSVirtualChannelRead-Funktion (wtsapi32.h)
Liest Daten vom Serverende eines virtuellen Kanals.
WTSVirtualChannelRead liest die Daten, die von einem VirtualChannelWrite-Aufruf am Clientende des virtuellen Kanals geschrieben wurden.
Syntax
BOOL WTSVirtualChannelRead(
[in] HANDLE hChannelHandle,
[in] ULONG TimeOut,
[out] PCHAR Buffer,
[in] ULONG BufferSize,
[out] PULONG pBytesRead
);
Parameter
[in] hChannelHandle
Handle für einen virtuellen Kanal, der von der FUNKTION WTSVirtualChannelOpen geöffnet wird.
[in] TimeOut
Gibt das Timeout in Millisekunden an. Wenn TimeOut null ist, gibt WTSVirtualChannelRead sofort zurück, wenn keine Daten zu lesen sind. Wenn TimeOut INFINITE ist (in Winbase.h definiert), wartet die Funktion unbegrenzt, bis Daten gelesen werden.
[out] Buffer
Zeiger auf einen Puffer, der einen Datenblock empfängt, der vom Serverende des virtuellen Kanals gelesen wird. Die maximale Datenmenge, die der Server in einem einzelnen WTSVirtualChannelRead-Aufruf empfangen kann, beträgt CHANNEL_CHUNK_LENGTH Bytes. Wenn der VirtualChannelWrite-Aufruf des Clients einen größeren Datenblock schreibt, muss der Server mehrere WTSVirtualChannelRead-Aufrufe ausführen.
In bestimmten Fällen platziert Remotedesktopdienste eine CHANNEL_PDU_HEADER-Struktur am Anfang jedes Datenblocks, der von der WTSVirtualChannelRead-Funktion gelesen wird. Dies tritt auf, wenn die Client-DLL die Option CHANNEL_OPTION_SHOW_PROTOCOL festlegt, wenn die VirtualChannelInit-Funktion aufgerufen wird, um den virtuellen Kanal zu initialisieren. Dies tritt auch auf, wenn es sich bei dem Kanal um einen dynamischen virtuellen Kanal handelt, der mithilfe der IWTSVirtualChannel::Write-Methode geschrieben wird. Andernfalls empfängt der Puffer nur die Im VirtualChannelWrite-Aufruf geschriebenen Daten.
[in] BufferSize
Gibt die Größe des Puffers in Bytes an. Wenn dem Datenblock in Buffer eine CHANNEL_PDU_HEADER-Struktur vorangestellt wird, sollte der Wert dieses Parameters mindestens CHANNEL_PDU_LENGTH sein. Andernfalls sollte der Wert dieses Parameters mindestens CHANNEL_CHUNK_LENGTH sein.
[out] pBytesRead
Zeiger auf eine Variable, die die Anzahl der gelesenen Bytes empfängt.
Rückgabewert
Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich null.
Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista |
Unterstützte Mindestversion (Server) | Windows Server 2008 |
Zielplattform | Windows |
Kopfzeile | wtsapi32.h |
Bibliothek | Wtsapi32.lib |
DLL | Wtsapi32.Dll |