Methode PeekFromFirstAvailableClient

Überblick

Typ

Methode

Verfügbar ab

V1.0.4.0

Aufgabe

Lesen der im Empfangspuffer des ersten Clients, von dem Daten zum Lesen verfügbar sind, gespeicherten Daten.

Funktionsbeschreibung

Liest die gespeicherten Daten im Empfangspuffer des ersten Clients, von dem Daten zum Lesen verfügbar sind, ohne diese anschließend daraus zu entfernen.

Die Peek-Methode kann eingesetzt werden, wenn eine bestimmte Datenmenge verfügbar sein muss, um eine ordnungsgemäße Verarbeitung zu gewährleisten, und diese Menge anhand von Datenteilen (z. B. einem Länge-Feld) bestimmt werden kann. In diesem Fall können die Daten durch einen Aufruf der Methode Receive in die Anwendung kopiert werden.

Der UDINT-Rückgabewert verweist auf die Anzahl der in den von der Anwendung bereitgestellten Puffer geschriebenen Bytes.

Hinweise für Verbindungen mit TLS

Das Verhalten der Methoden Peek und Receive kann für die Verbindungen mit TLS und ohne TLS unterschiedlich sein. Diese gilt insbesondere, wenn große Datenpakete ausgetauscht werden. Bei der Ausführung der Methoden in einer Verbindung mit TLS kann es notwendig sein, dass mehrere Methodenaufrufe ausgeführt werden müssen, bis alle Daten in den Anwendungspuffer kopiert oder verschoben wurden. Überprüfen Sie in jedem Fall vor der Verarbeitung der Daten, welche Menge Daten kopiert oder verschoben wurde und ob die Daten vollständig sind.

Schnittstelle

Eingabe

Datentyp

Gültiger Bereich

Beschreibung

i_pbyReceiveBuffer

POINTER TO BYTE

-

Startadresse des Puffers, in den die empfangenen Daten geschrieben werden.

i_udiReceiveBufferSize

UDINT

1 ... 2147483647

Anzahl der zu lesenden Bytes.

HINWEIS: Der Wert darf die Größe des Puffers nicht überschreiten.
HINWEIS: Um eine Zugriffsverletzung aufgrund eines ungültigen Zeigerzugriffs auf den Speicher zu vermeiden, verwenden Sie den arithmetischen Operator SIZEOF in Verbindung mit dem Zielpuffer, um den Wert für i_udiReceiveBufferSize zu bestimmen.

Ausgabe

Datentyp

Gültiger Bereich

Beschreibung

q_sClientIP

STRING(15)

IP-Adresse des Clients.

q_dwClientIP

DWORD

-

IP-Adresse des Clients als DWORD, wobei jedes Byte einer Stelle der IPv4-Adresse entspricht.

q_uiClientPort

UINT

Quellport des Clients.

Verwendet von

  • FB_TCPServer/FB_TCPServer2