Einzelnen Beitrag anzeigen

mjustin

Registriert seit: 14. Apr 2008
3.005 Beiträge
 
Delphi 2009 Professional
 
#22

AW: Kommunikation zwischen zwei Delphiprogrammen

  Alt 1. Dez 2022, 17:13
Es gibt dafür aber die WinAPI Funktionen FindFirstChangeNotification / FindNextChangeNotification, die ich z.B. in dzEditorLineendsFix verwende, um die Font-Datei, die Delphi 2007 erzeugt, jedesmal wieder in ein anderes Verzeichnis zu verschieben.

Der Code läuft in einem Hintergrundthread und sieht so aus:
...
Und nicht vergessen: Der Code sollte in einem Hintergrund-Thread laufen, sonst blockiert er das UI.
Diese API habe ich einer Netzwerkumgebung zum Überwachen eines EDI (Incoming) Verzeichnis auch einmal eingesetzt.
Solange die Anwendung kontinuierlich läuft, und das Netzwerkverzeichnis erreichbar ist, funktioniert es auch prima. Doch nach einer Netzwerkstörung, wegen der das Programm den Incoming-Ordner vorübergehend nicht sieht, oder einem Neustart des Programms, liegen eventuell Dateien im Incoming-Ordner, die zwischenzeitlich eingetroffen sind.
Daher muss man beim Start des Programms dann zusätzlich noch einmal einen normalen Directory-Scan durchführen. So gesehen hat man dann zwei Schleifen für ein und dieselbe Aufgabe.

Zur Kommunikation zwischen zwei Prozessen würde ich entweder das klassische Suchen im Dateisystem (Findxxx) verwenden, oder eine andere Methode für IPC. Client-Server basierte Lösungen jedoch nur mit einem zentralen Server. Nicht auf jedem Rechner im lokalen Netz möchte die IT "wilde" HTTP- oder sonstige offene Server-Ports sehen
Michael Justin
habarisoft.com
  Mit Zitat antworten Zitat