![]() |
Gibt es einen einfacheren Weg zur INI als diesen?
Delphi-Quellcode:
//INIDATEI
function suchdatei(pfad,datei:string):string; var sr:TSearchRec; begin result:=''; if findfirst(pfad+'*.*',$27,sr)=0 then repeat if ansilowercase(sr.name)=ansilowercase(datei) then begin result:=pfad; break; end; until findnext(sr)<>0; FindClose(Sr); end; function finden(start,datei:string):string; var sr:TSearchRec; hlp:string; begin if ansilastchar(start)<>'\' then start:=start+'\'; result:=suchdatei(start,datei); if result <> '' then exit; if findfirst(start+'*.*',faAnyfile,sr)=0 then begin repeat if (sr.Attr and faDirectory > 0)and(sr.name[1]<>'.') then begin hlp:=start+sr.name; result:=finden(hlp,datei); if result <> '' then break; end; until findnext(sr)<>0; FindClose(Sr); end; end; //INIDATEI
Delphi-Quellcode:
Im endeffekt brauch ich die Information fom Ordner in dem sich die EXE befindet. Müsste doch einfacher gehen oder?
if not FileExists('DRPEncME.ini')
then begin Startverzeichnis:='C:'; Dateiname:='DRPEncME.exe'; screen.cursor:=crhourglass; Ergebnis:=finden(Startverzeichnis,Dateiname); if Ergebnis <> '' then begin listINI.Items.Clear; ListINI.Items.add(Ergebnis); listINI.Items.SaveToFile('DRPEncME.ini'); ListLOAD.Items.LoadFromFile('DRPEncME.ini'); INI.Text:=ListLOAD.Items[0]; end else Startverzeichnis:='D:'; Dateiname:='DRPEncME.exe'; screen.cursor:=crhourglass; Ergebnis:=finden(Startverzeichnis,Dateiname); if Ergebnis <> '' then begin listINI.Items.Clear; ListINI.Items.add(Ergebnis); listINI.Items.SaveToFile('DRPEncME.ini') ; ListLOAD.Items.LoadFromFile('DRPEncME.ini'); INI.Text:=ListLOAD.Items[0]; end else Startverzeichnis:='E:'; Dateiname:='DRPEncME.exe'; screen.cursor:=crhourglass; Ergebnis:=finden(Startverzeichnis,Dateiname); if Ergebnis <> '' then begin listINI.Items.Clear; ListINI.Items.add(Ergebnis); listINI.Items.SaveToFile('DRPEncME.ini'); ListLOAD.Items.LoadFromFile('DRPEncME.ini'); INI.Text:=ListLOAD.Items[0]; end else Startverzeichnis:='F:'; Dateiname:='DRPEncME.exe'; screen.cursor:=crhourglass; Ergebnis:=finden(Startverzeichnis,Dateiname); if Ergebnis <> '' then begin listINI.Items.Clear; ListINI.Items.add(Ergebnis); listINI.Items.SaveToFile('DRPEncME.ini'); ListLOAD.Items.LoadFromFile('DRPEncME.ini'); INI.Text:=ListLOAD.Items[0]; end else Startverzeichnis:='G:'; Dateiname:='DRPEncME.exe'; screen.cursor:=crhourglass; Ergebnis:=finden(Startverzeichnis,Dateiname); if Ergebnis <> '' then begin listINI.Items.Clear; ListINI.Items.add(Ergebnis); listINI.Items.SaveToFile('DRPEncME.ini'); ListLOAD.Items.LoadFromFile('DRPEncME.ini'); INI.Text:=ListLOAD.Items[0]; end else Startverzeichnis:='H:'; Dateiname:='DRPEncME.exe'; screen.cursor:=crhourglass; Ergebnis:=finden(Startverzeichnis,Dateiname); if Ergebnis <> '' then begin listINI.Items.Clear; ListINI.Items.add(Ergebnis); listINI.Items.SaveToFile('DRPEncME.ini'); ListLOAD.Items.LoadFromFile('DRPEncME.ini'); INI.Text:=ListLOAD.Items[0]; end else showmessage('DRPEncME.exe not found'); screen.cursor:=crdefault; end; begin makecmd.Click; end; end; |
Re: Gibt es einen einfacheren Weg zur INI als diesen?
Hallo,
klar - geht auch viel einfacher. Jede Anwendung bekommt bei Aufruf den Pfad und Dateinamen als Paramter mit.
Code:
PfadUndDateiname:=ParamStr(0)
|
Re: Gibt es einen einfacheren Weg zur INI als diesen?
Hallo DRPEnc,
mit ExtractFilePath(Application.ExeName) bekommst du den Pfad der Exe. Vielleicht hilft es dir. Tschüß Markus |
Re: Gibt es einen einfacheren Weg zur INI als diesen?
Und nur der Pfad ist:
Delphi-Quellcode:
Pfad := ExtractFilePath(ParamStr(0))
|
Re: Gibt es einen einfacheren Weg zur INI als diesen?
danke, wie einbinden?
habs danke... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:06 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz