Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi ParamStr in ListBox laden (https://www.delphipraxis.net/37792-paramstr-listbox-laden.html)

kingflo 10. Jan 2005 17:14


ParamStr in ListBox laden
 
Hallo ich möchte gerne, dass wenn mehrere Datein mit meinem Programm geöffnet werden alle datein in eine ListBox hinzufügen.

Also wenn man im Explorer z.B 5 Datein makiert und dann auf 'öffnen mit -> Project.exe' klickt dann kann ich mit meinem bis jetzigen Verfahren nur eine Datei verarbeiten.

Ich hoffe mir kann da jemand helfen

mfg
flo

Luckie 10. Jan 2005 17:17

Re: ParamStr in ListBox laden
 
Siehe dazu oneinst von Nico.

Aenogym 10. Jan 2005 17:18

Re: ParamStr in ListBox laden
 
hi,

ganz einfach:

Delphi-Quellcode:
  for i := 1 to paramcount do
    paramList.items.Add(paramstr(i));
paramList ist dabei die listbox, die dann alle parameter enthält

Aenogym

IngoD7 10. Jan 2005 17:20

Re: ParamStr in ListBox laden
 
Zitat:

Zitat von kingflo
Ich hoffe mir kann da jemand helfen

Wie hast du es denn bisher gelöst?

Und wie oft wird dein Programm in dem Beispiel geöffnet? 1 mal oder 5 mal?

Luckie 10. Jan 2005 17:20

Re: ParamStr in ListBox laden
 
Es geht nicht darum alle Paraneter die eine Anwendung bei Start mitbekommt in der Listzbox anzuzeigen, sondern darum, wenn die Anwendung mehrmals mit Parameter gestartet wurde, sie nur einmal zu starten und die Parameter aller anderen Instanzen an die erste Instanz weiterzureichen.

SirThornberry 10. Jan 2005 17:25

Re: ParamStr in ListBox laden
 
du musst bei öffnen des programmes prüfen ob dein Programm schon geöffnet ist.
Wenn ja musst du einfach die Parameter per Sendmessage (oder sei einfach kreativ) an dein bereits laufendes Programm weiterreichen und dann das als zweites gestartete Programm schließen. feststellen ob dein programm schon gestartet ist kannst du mit CreateMutex. Das bereits laufende Instanz deines Programmes kannst du mit FindWindow finden und wie du die Daten übertragen kannst ist zum Beispiel hier: http://www.delphipraxis.net/internal...=221044#221044
einfach den Quelltext im Anhang mal ansehen

kingflo 10. Jan 2005 17:26

Re: ParamStr in ListBox laden
 
Zitat:

Zitat von IngoD7
Zitat:

Zitat von kingflo
Ich hoffe mir kann da jemand helfen

Wie hast du es denn bisher gelöst?

Und wie oft wird dein Programm in dem Beispiel geöffnet? 1 mal oder 5 mal?

einmal aber ich verarbeite auch nur den ersten string
also ParamStr(1)

Aenogym 10. Jan 2005 17:26

Re: ParamStr in ListBox laden
 
Zitat:

Zitat von Luckie
Es geht nicht darum alle Paraneter die eine Anwendung bei Start mitbekommt in der Listzbox anzuzeigen, sondern darum, wenn die Anwendung mehrmals mit Parameter gestartet wurde, sie nur einmal zu starten und die Parameter aller anderen Instanzen an die erste Instanz weiterzureichen.

achso. dann ist mein code natürlich quatsch. sorry :duck:

Aenogym

kingflo 10. Jan 2005 17:28

Re: ParamStr in ListBox laden
 
Zitat:

Zitat von Luckie
Es geht nicht darum alle Paraneter die eine Anwendung bei Start mitbekommt in der Listzbox anzuzeigen, sondern darum, wenn die Anwendung mehrmals mit Parameter gestartet wurde, sie nur einmal zu starten und die Parameter aller anderen Instanzen an die erste Instanz weiterzureichen.

Das ist aber auch gut, denn das wäre meine nächste Frage gewesen :wink:

kingflo 10. Jan 2005 17:38

Re: ParamStr in ListBox laden
 
Zitat:

Zitat von Aenogym
hi,

ganz einfach:

Delphi-Quellcode:
  for i := 1 to paramcount do
    paramList.items.Add(paramstr(i));
paramList ist dabei die listbox, die dann alle parameter enthält

Aenogym

Wenn ich das so mache, dann fügt er leider auch nur die erste Datei hinzu und nicht alle

kingflo 10. Jan 2005 17:41

Re: ParamStr in ListBox laden
 
Also mein bisheriger Code sieht so aus:

Code:
if (ParamCount > 0) and FileExists(ParamStr(1)) then
begin
done:=true;
FileToOpen:=ParamStr(1);
PlayDahFile;
  for i := 1 to paramcount do begin
   PlayListAktuell.Items.Add(paramstr(i));

  end;
end;
Die erste Datei soll abgespielt werden (klappt auch) und alle datein sollen zur PlayListAktuell hinzugefügt werden (klappt nicht nur die erste wird hinzugefügt)

Luckie 10. Jan 2005 19:38

Re: ParamStr in ListBox laden
 
Hast du eigentlich schon mal gekuckt, was hinter meinem Link steckt?

Aenogym 10. Jan 2005 19:39

Re: ParamStr in ListBox laden
 
Zitat:

Zitat von kingflo
Wenn ich das so mache, dann fügt er leider auch nur die erste Datei hinzu und nicht alle

richtig, es werden alle parameter hinzugefügt, die der jeweiligen anwendung übergeben wurden.

schau dir luckies programm an. das löst dien problem.

Aenogym


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:35 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