Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi ini auslesen und übergeben (https://www.delphipraxis.net/22915-ini-auslesen-und-uebergeben.html)

thomasvonmuenster1 26. Mai 2004 08:38


ini auslesen und übergeben
 
Ich speichere einen Dateinamen in der INI möchte den gerne Übergeben an SehllExecute.?
Delphi-Quellcode:
procedure TMainForm.Button3Click(Sender: TObject);
var
  ini : TIniFile;
  s: string;
  x: PAnsiChar;
 begin
  ini := TIniFile.Create('C:\test\bauer.ini');
  ListBox1.Clear;
  try
   ini.WriteString('Liste','Datei1','test2.pdf');
   ini.ReadSectionValues('Liste',ListBox1.Items);
   //ini.ReadSections(ListBox1.Items);
  //ini.ReadSection('Liste',Listbox1.Items);
  finally
  ini.Free;
  end;
   s:= ????;
   x := PChar(s);
   if ShellExecute(0, nil, x, nil, nil, 9)< 33 then showmessage('Anwendung kann nicht geoeffnet werden ');

 end;

Pseudemys Nelsoni 26. Mai 2004 08:42

Re: ini auslesen und übergeben
 
lese ihn doch mit ReadString aus?

Achja du brauchst nicht extra die variable x deklarieren, du kannst direkt PChar(s) übergeben

s14 26. Mai 2004 08:44

Re: ini auslesen und übergeben
 
hallo,

Delphi-Quellcode:
s := ini.ReadString('Liste','Datei1');
aber noch bevor "ini.Free;" ausgeführt wird :wink:

Cuchulainn 26. Mai 2004 08:46

Re: ini auslesen und übergeben
 
Versuch es mal so (ungetestet):

Delphi-Quellcode:
procedure TMainForm.Button3Click(Sender: TObject);
var
  ini : TIniFile;
  s: string;
  i: Integer;
begin
  ini := TIniFile.Create('C:\test\bauer.ini');
  ListBox1.Clear;
  try
   ini.WriteString('Liste','Datei1','test2.pdf');
   s := ini.ReadString('Liste', 'Datei1', '');
  finally
  ini.Free;
  end;
  if ShellExecute(0, nil, pchar(s), nil, nil, 9)< 33 then
    showmessage('Anwendung kann nicht geoeffnet werden ');
Wenn du nur einen Dateinamen in der Ini hast, brauchst du die Listbox auch nicht. Oder habe ich dich jetzt falsch verstanden? Willst du mehrere Anwendungen gleichzeitig öffnen?

thomasvonmuenster1 26. Mai 2004 09:15

Re: ini auslesen und übergeben
 
Er meckert zwar nicht mehr, aber er gibt mir meine Fehler Meldung wieder.
(Anwendung kann nicht geoeffnet werden).
Meine Ini sieht sie aus [Liste]
Datei1=test2.pdf

s14 26. Mai 2004 09:20

Re: ini auslesen und übergeben
 
Also, entweder ist die Extension "PDF" nicht assoziiert oder es muss der vollständige Pfad zur Datei angegeben werden.

thomasvonmuenster1 26. Mai 2004 09:22

Re: ini auslesen und übergeben
 
Habe jetzt s mir anzeigen lassen. Alles Richtig nur ShellExecute macht er nicht wie er soll!?

thomasvonmuenster1 26. Mai 2004 09:24

Re: ini auslesen und übergeben
 
Der Pfad musste Vollständig angegeben werden Danke!


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