Einzelnen Beitrag anzeigen

TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.827 Beiträge
 
Delphi 12 Athens
 
#13

AW: Kommunikation zwischen zwei Delphiprogrammen

  Alt 28. Nov 2022, 19:15
Hallo,
Ihre Lösung gefällt mir, ich könnte eine Textdate mit den Daten auf jeweils einer Zeile anlegen. Die Datei hätte mehrere Zeilen. Damit wäre auch eine Batchverarbeitung möglich. Dabei geht es mir dann auch nicht um Schnelligkeit.
Aber hier liegt der Haken:
>Programm 1 schreibt seine Daten, die berechnet werden sollen, in Verzeichnis A, Programm 2 wartet darauf, dass in Verzeichnis A Dateien angelegt werden,
Es ist das warten von Programm 2, also die Überwachung eines Verzeichnisses. Ich habe einen ziemlichen Teil des Sonntags damit verbracht dafür eine praktikable Lösung zu suchen. Hier in der Delphi-Praxis gibt es eine ganze Reihe von Beiträgen zu diesem Thema. Aber sie sind ziemlich alt mit Verweisen auf Webseiten die nicht mehr existieren mit anderen gebrochenen Links und Beiträgen die Probleme aufzeigen aber keine Lösung.
In der JCVL gibt es die Komponenten JvChangeNotify und TJvFolderMonitor. Leider brach die Installation der JXVL mit einem Fehler ab.
Hiermit komme ich also zur Zeit auch nicht weiter. Es gibt eine Watch_it.exe die Verzeichnisse überwacht und Aktionen auslöst. Ich brauch aber eine Unit oder Komponente die ich einbinden kann.
Wie haben Sie das gelöst?

>Man darf sich nur nicht von irgendwem erwischen lassen, dass man so eine simple Lösung verwendet statt irgendeines "Frameworks" oder einer Datenbank (wobei die >schon Old School sind) oder eines "Microservices".
Da habe ich keine Angst
Mit besten Grüßen
RWB
Ja, in der JVCL gibt's was. Das nutzt intern m.W. irgendwelche Windows APIs, du könntest das also von deren Quellcode abgucken.
Aber: bei einer fehlgeschlagenen JVCL Installation werden wir dir da nur weiterhelfen können, wenn du uns die Fehlermeldung nennst. Wir haben leider keine Glaskugeln...
Hast du zuerst die JCL installiert?
Wie bist du zur Installation vorgegangen? Via Tools/GetIt Packagemnager?
  Mit Zitat antworten Zitat