Methode ReceiveFromSpecificClient

Überblick

Typ

Methode

Verfügbar ab

V1.0.4.0

G-SE-0045939.2.gif-high.gif

 

 

Aufgabe

Lesen der im Empfangspuffer des Clients, dessen Ausgangs-IP-Adresse und -Port angegeben sind, gespeicherten Daten, und anschließendes Entfernen der Daten, wenn kein Fehler aufgetreten ist.

Funktionsbeschreibung

Liest die im Empfangspuffer des Clients, dessen Ausgangs-IP-Adresse und -Port angegeben sind, gespeicherten Daten, und entfernt sie anschließend, wenn kein Fehler aufgetreten ist.

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

Zusätzliche Informationen zu den Empfangsmethoden finden Sie im Abschnitt Empfangsmethode.

Hinweise für Verbindungen mit TLS

Das Verhalten der Methoden Peek und Receive ist möglicherweise bei Verbindungen mit oder ohne TLS unterschiedlich. Diese gilt insbesondere, wenn große Datenpakete ausgetauscht werden. Bei der Ausführung der Methoden in einer Verbindung mit TLS ist kann es notwendig sein, dass mehrere Methodenaufrufe ausgeführt werden müssen, bis alle Daten in den Anwendungs­puffer 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

Eingang

Datentyp

Gültiger Bereich

Beschreibung

i_sClientIP

STRING(15)

-

IP-Adresse des verbundenen Clients, dessen Daten gelesen werden sollen.

i_uiClientPort

UINT

1 ... 65535

Ausgangs-Port des verbundenen Clients, dessen Daten gelesen werden sollen.

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.

Eingang/Ausgang

Datentyp

Gültiger Bereich

Beschreibung

iq_udiFillLevel

UDINT

1 ... 2147483647

Gibt den Füllstand des Puffers an.

Vor einem Funktionsaufruf:

Die Daten werden ab diesem Offset geschrieben.

Nach dem Funktionsaufruf:

Wird durch Hinzufügen der Anzahl der geschriebenen Bytes zum ursprünglichen Wert aktualisiert.

Verwendet von

oFB_TCPServer/FB_TCPServer2