Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Als Parameter übergebene Dateinamen in eine Liste einfügen (https://www.delphipraxis.net/80611-als-parameter-uebergebene-dateinamen-eine-liste-einfuegen.html)

Hador 12. Nov 2006 12:04


Als Parameter übergebene Dateinamen in eine Liste einfügen
 
Ich möchte alle an ein Programm übergebenen Parameter in eine Listbox einfügen. Beim Start ist das ganze ja klein Problem. Da kann ich mit Hilfe von ParamStr und ParamCount ja alle Parameter bekommen.
Mein Problem ist nur, dass ich das ganze auch zur Laufzeit machen möchte.
Ich könnte ja, wenn ich das Programm starte, prüfen, ob das Programm nicht schon geöffnet ist. Aber wie übergebe ich dem Programm dann die neuen Daten (Parameter)?
Die einzige Lösung, die mir eingefallen ist, ist einen kleinen Server einzubinden, an den die Sachen dann geschickt werden, aber es gibt sicherlich bessere/elegantere Lösungen.
Und da vertraue ich mal ganz auf euch :P

bttb930 12. Nov 2006 12:44

Re: Als Parameter übergebene Dateinamen in eine Liste einfüg
 
Zitat:

Zitat von Hador
Ich möchte alle an ein Programm übergebenen Parameter in eine Listbox einfügen. Beim Start ist das ganze ja klein Problem. Da kann ich mit Hilfe von ParamStr und ParamCount ja alle Parameter bekommen.
Mein Problem ist nur, dass ich das ganze auch zur Laufzeit machen möchte.

ParamStr und ParamCount sind zur ganzen Laufzeit gefüllt.

Zitat:

Zitat von Hador
Ich könnte ja, wenn ich das Programm starte, prüfen, ob das Programm nicht schon geöffnet ist. Aber wie übergebe ich dem Programm dann die neuen Daten (Parameter)?

Häh???

Zitat:

Zitat von Hador
Die einzige Lösung, die mir eingefallen ist, ist einen kleinen Server einzubinden, an den die Sachen dann geschickt werden, aber es gibt sicherlich bessere/elegantere Lösungen.
Und da vertraue ich mal ganz auf euch :P


marabu 12. Nov 2006 12:52

Re: Als Parameter übergebene Dateinamen in eine Liste einfüg
 
Hallo Lars,

schau mal da: Weitere Programm-Instanzen verhindern mit Parameterübergabe

Vielleicht hilft es.

Grüße vom marabu

Der_Unwissende 12. Nov 2006 13:05

Re: Als Parameter übergebene Dateinamen in eine Liste einfüg
 
Hi,
das Doppelte Starten einer Anwendung kannst du über einen Mutex oder ein Semaphor regeln. Daten kannst du auf verschiedenste Weise zwischen zwei Prozessen austauschen. Wie du schon sagtest, ein Server-Client ist zwar möglich, aber nicht schön. Auch unter Windows könntest du es mit named-Pipes versuchen, der eigentlich schönere Weg liegt aber im Verschicken von Botschaften. So kommuniziert dein Programm eh mit der Außenwelt. Die hier verwendete Nachricht heißt WM_COPYDATA.

Zu beidem findest du eine Menge in der DP, z.B. auch in der Codelib: WM_COPYDATA und Doppeltes Starten + Kommandozeilenparameter

Gruß Der Unwissende

[Add nach roter Kasten]
Oder du folgst dem Link des Marabu
[/Add]

Hador 12. Nov 2006 15:26

Re: Als Parameter übergebene Dateinamen in eine Liste einfüg
 
Danke das hilft mir schon sehr weiter.
Mal schauen, wie das ganze klappt.

@bttb930: Ich glaube du hast mich falsch verstanden


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:31 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz