Guten Tag,
wir versuchen im Moment unsere
COM-Schnittstellen ans Netz zu bringen. Dafür nehmen wir den NPort 5150 von Moxa. Dieses Gerät ermöglicht es, die Daten der
COM-Schnittstelle quasi als
TCP-
IP Dienst zu verwenden. Über Hyperterm kommen wir auch ohne Probleme auf das daran angeschlossene Gerät. Mit Delphi waren wir bisher leider nicht so erfolgreich. Es gibt ein Beispielprojekt welches leider auch überhaupt nicht funktioniert. Es scheitert direkt schon am Anfang:
Delphi-Quellcode:
nsio_init();
ip := Edit1.Text;
Val(Edit2.Text, pid, code);
ret := nsio_open(PChar(
ip), pid, 3000);
// -2: Bad Parameter
Das sind die ersten Zeilen, es wird eine
IP als ein null terminierter String übergeben, dazu der Port den wir auch mit Hyperterm getestet haben sowie der Timeout. Das nsio_open ist eine Methode aus der IPSerial.dll (wo wir auch verschiedene DLLs ausprobiert haben). Der Returncode ist -2 (Bad Parameter), ungültige Eingaben geben einen anderen Code zurück.
Ersteinmal die Frage: Hat jemand schonmal mit IPSerial bzw. eventuell auch NPort gearbeitet und einen Hinweis?
Wenn ihr noch nicht damit gearbeitet habt, kennt ihr Alternativen um über
TCP-
IP auf die
COM-Schnittstelle (wie Hyperterm) zuzugreifen? Die
Indy-Komponente haben wir schon ausprobiert, da kriegen wir auch was zurück aber leider ist das nicht brauchbar und unzuverlässig.
Beste Grüße
Matthias