Kommunikation zwischen Prozessen
Kommunikation zwischen Prozessen
Hey,
ich bin neu hier im Forum und wende mich gleich mit einer Frage an euch! Ich verwende ein Programm names "Log Monitor". Dieses überwacht ein Verzeichnis in Realzeit und sobald eine neue Datei in diesem Verzeichnis angelegt wird, startet dieses Programm eine Lazarus-Anwendung. Dabei wird der Name der Datei in einer Variable der Form %File="..." gespeichert und soll auch an meine Lazarus-Anwendung übergeben werden.
Deswegen nun die Frage: Wie komm ich in meiner Lazarus Anwendung an genau diese Variable ran???
ich bin neu hier im Forum und wende mich gleich mit einer Frage an euch! Ich verwende ein Programm names "Log Monitor". Dieses überwacht ein Verzeichnis in Realzeit und sobald eine neue Datei in diesem Verzeichnis angelegt wird, startet dieses Programm eine Lazarus-Anwendung. Dabei wird der Name der Datei in einer Variable der Form %File="..." gespeichert und soll auch an meine Lazarus-Anwendung übergeben werden.
Deswegen nun die Frage: Wie komm ich in meiner Lazarus Anwendung an genau diese Variable ran???
Re: Kommunikation zwischen Prozessen
Meinst du als Kommandozeilenparameter?
http://wiki.freepascal.org/Command_line ... _variables" onclick="window.open(this.href);return false;
http://wiki.freepascal.org/Command_line ... _variables" onclick="window.open(this.href);return false;
Re: Kommunikation zwischen Prozessen
Ich beschäftige mich leider noch nicht so lang mit solchen Dingen! Das Programm welches das Verzeichnis überwacht und den File-Namen der neu erstellten Datei an meine Lazarus Anwendung weitergeben soll, ist folgendes:
http://www.aplusfreeware.com/categories ... nitor.html" onclick="window.open(this.href);return false;
Ich weiß, dass dieses Programm den Namen in einer Variable %File="..." als Parameter speichert und an das externe Programm (also meine selbst erstellte Anwendung) weitergibt. Mein Problem ist der Zugriff darauf, beim Start meiner Anwendung. Was macht denn ein Kommandozeilenparameter?
http://www.aplusfreeware.com/categories ... nitor.html" onclick="window.open(this.href);return false;
Ich weiß, dass dieses Programm den Namen in einer Variable %File="..." als Parameter speichert und an das externe Programm (also meine selbst erstellte Anwendung) weitergibt. Mein Problem ist der Zugriff darauf, beim Start meiner Anwendung. Was macht denn ein Kommandozeilenparameter?
Re: Kommunikation zwischen Prozessen
Selber nicht viel.sven1 hat geschrieben:Was macht denn ein Kommandozeilenparameter?
Es ist einfach ein Parameter, der dem zu startenden Programm mitgegeben wird.
z.B.
Code: Alles auswählen
firefox http://www.mozilla.com" onclick="window.open(this.href);return false;
Firefox liest nun den Parameter http://www.mozilla.com" onclick="window.open(this.href);return false; über sowas wie ParamStr ein. Siehe Beispiel im Link oben.
Re: Kommunikation zwischen Prozessen
Perfekt!!! Es hat funktioniert! Danke für die schnelle und kompetente Hilfe 

-
- 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: Kommunikation zwischen Prozessen
In Linux gibt es eine "Datei", die aus einem Lese-Zugriff zurückkommt, sobald sich in einem bestimmten Verzeichnis etwas ändert. So geht das ohne aktives Pollen. Ob es das in Windows auch gibt, weiß ich nicht, vermute ich aber.sven1 hat geschrieben:Dieses überwacht ein Verzeichnis in Realzeit und sobald eine neue Datei in diesem Verzeichnis angelegt wird...
-Michael
-
- Beiträge: 619
- Registriert: Mi 9. Mär 2011, 16:34
- OS, Lazarus, FPC: Ubuntu10.04 LTS (L 0.9.31.0 FPC 2.4.4)
- CPU-Target: 64Bit
- Wohnort: seit 01.06.2011 in Wahlstedt
Re: Kommunikation zwischen Prozessen
Dies wird es wohl auch unter "Windoof geben, aber wohl erst ab Win Vista
Ubuntu 10.04 LTS ist meine Heimat. Lazarus ist meine Sprache
und der Kreis Segeberg meine LIEBE 


-
- Beiträge: 340
- Registriert: Di 12. Sep 2006, 08:57
- OS, Lazarus, FPC: Winux (L 0.9.xy FPC 2.2.z)
- CPU-Target: xxBit
- Kontaktdaten:
Re: Kommunikation zwischen Prozessen
Methoden zum Überwachen von Verzeichnissen gibt es seit Windows XP. Stichwort ReadDirectoryChanges.Maik81ftl hat geschrieben:Dies wird es wohl auch unter "Windoof geben, aber wohl erst ab Win Vista
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
Grüße, Antrepolit
care only if your os is really burning
care only if your os is really burning
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Re: Kommunikation zwischen Prozessen
Ich weiß nicht mehr genau wie die Klasse hieß, verwendet habe ich sie auch noch nicht, bin eher durch Zufall über diese Möglichkeit gestolpert:
In Lazarus besser gesagt in FPC gibt es dafür schon eine Möglichkeit, Änderungen in einem Verzeichnis zu überwachen. Ich werde mal eben schauen, ob ich den Namen der Klasse wieder finde und sehen ob sie Plattform unabhängig ist. Sowas gab es ja auch schon in Windows 95....
Änderungen von Verzeichnissen zu überwachen....
In Lazarus besser gesagt in FPC gibt es dafür schon eine Möglichkeit, Änderungen in einem Verzeichnis zu überwachen. Ich werde mal eben schauen, ob ich den Namen der Klasse wieder finde und sehen ob sie Plattform unabhängig ist. Sowas gab es ja auch schon in Windows 95....
Änderungen von Verzeichnissen zu überwachen....
MFG
Michael Springwald
Michael Springwald
-
- Beiträge: 958
- Registriert: Mo 11. Sep 2006, 22:56
Re: Kommunikation zwischen Prozessen
Das hier:
http://www.cromis.net/blog/downloads/directory-watch/" onclick="window.open(this.href);return false;
kannst du nehmen um das externe Programm zu vermeiden und alles intern zu lösen.
Sollte ohne oder mit kleinen Anpassungen verwendbar sein (natürlich Windows only).
Für Linux sowas:
http://www.friends-of-fpc.org/research/ ... g/inotify/" onclick="window.open(this.href);return false;
http://www.cromis.net/blog/downloads/directory-watch/" onclick="window.open(this.href);return false;
kannst du nehmen um das externe Programm zu vermeiden und alles intern zu lösen.
Sollte ohne oder mit kleinen Anpassungen verwendbar sein (natürlich Windows only).
Für Linux sowas:
http://www.friends-of-fpc.org/research/ ... g/inotify/" onclick="window.open(this.href);return false;