Rückgabewerte

Die Funktionen der Interfaces haben als Rückgabewerte HRESULT. Die rückgegebenen Werte leiten sich aus den ADS Return Codes ab. Ihre Bedeutung für das TF6311:

Wert
(Enum)

Wert
(Numerisch)

Beschreibung

ADS_E_INVALIDPARM

0x9811070B

Socket nicht allokiert/bekannt, übergebene Pointer NULL

ADS_E_NOMOREHDLS

0x98110716

Keine freien Sockets verfügbar.
Default: 32
siehe TCP/UDP RT TcCom Parameter

ADS_E_INCOMPATIBLE

0x9811070E

Socket im falschen Zustand.
Z.B. Versuch eines Connect(), wenn vorher Socket mit Listen() genutzt; Close() ohne vorherige Verbindung; Send() ohne Verbindung; Socket Listen(), wenn bereits ein Listen() aufgerufen wurde.

ADS_E_INVALIDSTATE

0x98110712

TCP/UDP RT Objekt ist nicht in OP Mode

ADS_E_INVALIDDATA

0x98110706

Problem mit Parameter.
Z.B. pData==NULL bei SendData

ADS_E_EXISTS

0x9811070F

Port schon anderweitig verwendet

ADS_E_PENDING

0x9811071E

Es wurden nicht alle Daten versendet (SendData)

S_OK

0x0

Aufruf erfolgreich.
IsConnected(): Verbindung besteht

S_FAIL

0x1

Aufruf nicht erfolgreich, Allgemeiner Fehler
IsConnected(): Verbindung besteht nicht

Die Werte aus dem Bereich 0x9811 sind in der Enumeration „E_HRESULTAdsErr“ (PLC) sowie entsprechende defines ADS_E_* (C++) definiert.