Herunterladen Diese Seite drucken

Bosch Rexroth IndraDrive Bedienungsanleitung Seite 239

Werbung

DOK-INDRV*-MLD-SYSLIB*-FK07-DE-P
Rexroth IndraDrive Rexroth IndraMotion MLD Bibliothek
"SysSockAccept"
"SysSockConnect"
"SysSockCreate"
"SysSockGetLastErrorSync"
"SysSockSetOption" und "Sys‐
SockGetOption"
z.B. 4000 Byte zu übertragende Daten als 3 Datenpakete mit 1446 Byte
und ein Paket mit 1108 Byte Nettodaten übertragen werden.
Das Timeout für Empfangen kann nicht verändert werden und ist auf
10000 ms eingestellt. Für das Senden existiert kein Timeout.
Für Serveranwendungen wird empfohlen die Portadressen 49.152 bis
65.535 zu verwenden. (Siehe auch "IANA" (Internet Assigned Numbers
Authority, http://www.iana.com)
Bei Reset und neuem Laden eines MLD-Programms ist es nicht nötig
Callback-Funktionen zu schreiben. Die MLD löscht bei Reset und
Download selbstständig alle von ihr geöffneten Sockets.
Im
"Non
Blocking
"ERR_UNAVAILABLE (-51)" gemeldet werden. Dieser Fehler bedeutet,
dass eine Ressource momentan nicht verfügbar ist und der
Funktionsaufruf wiederholt werden muss.
Vor
"SysSockAccept"
"SysSockListen" setzt eine Tabelle, um Verbindungsanforderungen zu
akzeptieren. Diese Tabelle muss bereit sein, bevor "SysSockAccept" zu
blockieren beginnt und auf Verbindungsversuche wartet.
"SysSockConnect" darf pro Socket nach "SysSockCreate" generell nur
einmal aufgerufen werden.
Blockingmode:
Ist
"SysSockConnect" für 1 Minute und kehrt dann mit dem Rückgabewert
=FALSE zurück. Mit der Funktion "SysSockGetLastErrorSync" kann der
Fehlercode ausgelesen werden.
Non Blockingmode: Ist der Rückgabewert =FALSE und der von
"SysSockGetLastErrorSync"
="NU_IS_CONNECTING", muss über die Funktion "SysSockSelect"
festgestellt werden, ob der Socket zum Senden und/oder Empfangen
bereit ist.
"SysSockCreate" setzt fix "Blockingmode".
Mögliche Übergabeparameter:
"diAddressFamily=SOCKET_AF_INET"
"diType=SOCK_STREAM" oder "diType=SOCK_DGRAM"
"diProtocol=SOCKET_IPPROTO_TCP"
"diProtocol=SOCKET_IPPROTO_UDP", wenn "diType=SOCK_STREAM"
"SysSockGetLasterrorSync" liefert den letzten erfassten Socket-Fehler.
Auftretende Fehler werden taskorientiert abgespeichert und auch so
ausgelesen. Der Übergabeparameter "diSocket" wird nicht ausgewertet.
Nachdem der Socket-Fehler ausgelesen ist, wird dieser gelöscht.
"SysSockGetLastError" sollte je nach Programmaufbau sofort
nachdem ein Fehler erkannt wurde aufgerufen werden, damit der
Fehlercode nicht anderweitig überschrieben wird.
Korrektur der Dokumentation: Bei "SysSockSetOption" wird der
Optionswert nicht wie beschrieben als Wert, sondern als Zeiger
(Pointer) auf den Wert übergeben. Der Pointer muss DWORD
sein.
Unterstützte Socket-Level:
SOCKET_SOL
Bosch Rexroth AG
Rexroth IndraDrive-Firmware-Bibliotheken
Mode"
kann
sporadisch
muss
"SysSockListen"
ein
Connect
nicht
gelieferte
237/249
der
Fehlercode
aufgerufen
werden.
möglich,
blockiert
Fehlercode
oder

Werbung

loading

Diese Anleitung auch für:

Rexroth indramotion mld