[ok]können verschiedene Programme inteinander kommunizieren?

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
haderlump
Beiträge: 185
Registriert: Fr 18. Jan 2013, 09:29
OS, Lazarus, FPC: Windows 10, Windows XP, Lazarus 1.6
CPU-Target: Celeron

[ok]können verschiedene Programme inteinander kommunizieren?

Beitrag von haderlump »

hallo zusammen [gelöst]
Ich schreibe ja schon lange an einem Steuerungsprogramm für eine Modelleisenbahn. Dieses kommuniziert über RS232 mit der Anlage, was auch sehr gut funktioniert.
Für verschiedene Tests muss ich immer unter die Anlage kriechen und irgenwelche Kontakte betätigen.
Ich habe mir nun ein kleinest Testpannel geschrieben, mit dem ich die Kontakte simulieren kann. Dieses läuft auf einem Laptop und ist über RS232 an den Eisenbahnrechner angeschlossen. Das Laptop brauche ich aber auch anderweitig, so dass ich immer wieder umbauen muss.
Nun zur eigentlichen Frage.
Wenn ich das Testpannel auf dem Moba-Rechner installiere, gibt es da nicht eine Möglichkeit dass diese beiden Programme die Daten miteinander asutauschen, und wenn ja, wie könnte ich das bewerkstelligen. Ich bräuchte also eine Art Gateway zwischen den Programmen.

Gruß Fritz
Zuletzt geändert von haderlump am Fr 7. Sep 2018, 03:57, insgesamt 1-mal geändert.

pluto
Lazarusforum e. V.
Beiträge: 7178
Registriert: So 19. Nov 2006, 12:06
OS, Lazarus, FPC: Linux Mint 19.3
CPU-Target: AMD
Wohnort: Oldenburg(Oldenburg)

Re: können verschiedene Programme inteinander kommunizieren?

Beitrag von pluto »

Nun, dass ist Relativ einfach:
Schau dir mal lnet an, damit habe ich z.b. 9 Programme "miteinander" verbunden. Es gab drei "Server". Wobei jedes Programm konnte Server und/oder Client sein. Sie konnten auch auf mehreren Ports gleichzeitig Lauschen.

Ich hatte z.b. ein Seriellen Proxy geschrieben, den ich über mehrer Rechner nutzen konnte..
MFG
Michael Springwald

Warf
Beiträge: 1908
Registriert: Di 23. Sep 2014, 17:46
OS, Lazarus, FPC: Win10 | Linux
CPU-Target: x86_64

Re: können verschiedene Programme inteinander kommunizieren?

Beitrag von Warf »

Lnet ist dafür komplett übertrieben.
Benutz lieber pipes. FÜC stellt dafür den SimpleIPC Client und Server zur Verfügung. Man muss nicht unbedingt extra Komponenten verwenden. Wenn du sockets also (lnet) verwendest wird intern eh nix anderes vom Betriebssystem gemacht als mit fifos also gibt es Performance technisch keine Unterschiede
Wenn dir Performance wichtig ist/du viele Daten übertragen musst (z.b. Video streams) kannst du auch shared Memory verwenden, da weiß ich aber ned ob Lazarus was für mitliefert

Benutzeravatar
kupferstecher
Beiträge: 418
Registriert: Do 17. Nov 2016, 11:52

Re: können verschiedene Programme inteinander kommunizieren?

Beitrag von kupferstecher »

haderlump hat geschrieben:Dieses läuft auf einem Laptop und ist über RS232 an den Eisenbahnrechner angeschlossen.

Es gibt "nullmoden-Emulatoren", die virtuelle serielle Schnittstellen bereitstellen (z.B. com0com). Du kannst dein Testprogramm dann auf dem Eisenbahnrechner laufen lassen und per "serieller Schnittstelle" mit dem Steuerprogramm auf dem gelichen Rechner verbinden.

MacWomble
Lazarusforum e. V.
Beiträge: 999
Registriert: Do 17. Apr 2008, 01:59
OS, Lazarus, FPC: Mint 21.1 Cinnamon / FPC 3.2.2/Lazarus 2.2.4
CPU-Target: Intel i7-10750 64Bit
Wohnort: Freiburg

Re: können verschiedene Programme inteinander kommunizieren?

Beitrag von MacWomble »

Und wenn du mit Linux arbeitest ist es auch einfach, denn dort gibt es tty0tty.
https://askubuntu.com/questions/588800/ ... ng-tty0tty
Alle sagten, dass es unmöglich sei - bis einer kam und es einfach gemacht hat.

haderlump
Beiträge: 185
Registriert: Fr 18. Jan 2013, 09:29
OS, Lazarus, FPC: Windows 10, Windows XP, Lazarus 1.6
CPU-Target: Celeron

Re: können verschiedene Programme inteinander kommunizieren?

Beitrag von haderlump »

hallo zusammen
Das mit dem com=com ist für mich eine geschmeidige Lösung.
Genau das was ich gsucht habe.
Danke
Grüße Fritz

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: können verschiedene Programme inteinander kommunizieren?

Beitrag von mschnell »

kupferstecher hat geschrieben:z.B. com0com

-> https://www.eltima.com/purchase/vspdxp/
$ 139 ?!?!?!?!?!?

-Michael

Socke
Lazarusforum e. V.
Beiträge: 3158
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

Re: können verschiedene Programme inteinander kommunizieren?

Beitrag von Socke »

kupferstecher hat geschrieben:z.B. com0com

https://www.heise.de/download/product/com0com-49731
=> Open Source
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: können verschiedene Programme inteinander kommunizieren?

Beitrag von mschnell »

Socke hat geschrieben:
kupferstecher hat geschrieben:z.B. com0com

https://www.heise.de/download/product/com0com-49731
=> Open Source


Gut !

da das vermutlich ein Treiber ist, sind die Fragen relevant:

Auch Winows 10 ?
32 und 64 Bit ?


P.S.:
Schön wäre es, zwei zusätzliche send-only Ports zu haben, um auch mitschneiden zu können.

-Michael

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6198
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: [ok]können verschiedene Programme inteinander kommunizie

Beitrag von af0815 »

OpenSource ja, aber es gibt aktuell keine signierte Pakete. Damit funktioniert die Installation nicht in Win 10.

Indirekt geht es, da eine Firma diesen Treiber auch verwendet, dort aber die Pakete selbst zusammenstellt und signierte.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

Antworten