CHANNEL_PDU_HEADER Struktur (pchannel.h)

Enthält Informationen zu einem Datenblock, der vom Serverende eines virtuellen Kanals empfangen wird.

Syntax

typedef struct tagCHANNEL_PDU_HEADER {
  UINT32 length;
  UINT32 flags;
} CHANNEL_PDU_HEADER, *PCHANNEL_PDU_HEADER;

Member

length

Größe des Datenblocks in Bytes, ohne diesen Header.

flags

Informationen zum Datenblock. Die folgenden Bitflags werden festgelegt. Beachten Sie, dass Sie beim Vergleichen der Werte in der folgenden Liste keine direkten Vergleiche mit dem Operator "==" vornehmen sollten. Verwenden Sie stattdessen die in der Liste beschriebenen Vergleichsmethoden.

CHANNEL_FLAG_FIRST (1)

Der Block ist der Anfang der Daten, die von einem einzelnen Schreibvorgang geschrieben werden.

Verwenden Sie bitweise Vergleiche, wenn Sie dieses Flag vergleichen.

CHANNEL_FLAG_LAST (2)

Der Block ist das Ende der Daten, die von einem einzelnen Schreibvorgang geschrieben werden.

Verwenden Sie bitweise Vergleiche, wenn Sie dieses Flag vergleichen.

CHANNEL_FLAG_MIDDLE (0)

Dies ist die Standardoption. Der Block befindet sich in der Mitte eines Datenblocks, der von einem einzelnen Schreibvorgang geschrieben wird.

Verwenden Sie keine bitweisen Vergleiche, um diesen Flagwert direkt zu vergleichen. Verwenden Sie stattdessen bitweise Vergleiche, um zu bestimmen, dass der Flagwert nicht CHANNEL_FLAG_FIRST oder CHANNEL_FLAG_LAST ist. Dies erfolgt mithilfe des folgenden Vergleichs:

Result = !(flags & CHANNEL_FLAG_FIRST) && !(flags & CHANNEL_FLAG_LAST)

CHANNEL_FLAG_ONLY (3)

Kombiniert die werte CHANNEL_FLAG_FIRST und CHANNEL_FLAG_LAST . Der Block enthält alle Daten aus einem einzelnen Schreibvorgang.

Verwenden Sie bitweise Vergleiche, wenn Sie dieses Flag vergleichen.

Hinweise

In bestimmten Fällen platziert Remotedesktopdienste eine CHANNEL_PDU_HEADER-Struktur am Anfang jedes Datenblocks, der durch einen Aufruf 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.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Kopfzeile pchannel.h

Weitere Informationen

IWTSVirtualChannel::Write

VirtualChannelInit

VirtualChannelWrite

WTSVirtualChannelRead