Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Dateipfad angeben (https://www.delphipraxis.net/145050-dateipfad-angeben.html)

RedShakal 22. Dez 2009 20:17


Dateipfad angeben
 
Hallo, ich habe in meinem Projekt eine Funktion drin, die in einem bestimmten Programm eine Config Datei editieren soll.

Dazu muss der User den Pfad angeben, der Pfad wird in ner ini gespeichert und fortan von dort ausgelesen.

Das Problem:

Wie ermittel ich ob das richtige Verzeichnis gewählt wurde? Und wie sorge ich dafür, das die Pfadangabe neugestartet wird wenn der Ordner falsch angegeben wurde?

Delphi-Quellcode:
SelectDirectory('Bitte wähle den Ordner aus.', '' ,Pfad);
  if not FileExists(Pfad+'\options.cfg') then
    begin
      If Pfad <> '' then Showmessage('Ein falscher Ordner wurde ausgewählt');
    end
  else
    begin
      Showmessage('Ordner wurde erfolgreich ausgewählt.');
    end;

  if Pfad = '' then
    begin
      MessageBox(0, 'Abbruch durch Benutzer.', 'Info', MB_OK);
      ExitProcess(0);
    end;

Er sagt mir immer das der Pfad falsch wäre, obwohl die Datei zu 100% genau in dieser Schreibweise im Zielverzeichnis liegt. Hat jemand vorschläge?

Danke im vorraus :-D


Edit:

Hab das Problem grad selber gelöst: Ich hatte vergessen Pfad im Fileexists mit anzugeben :oops:

Fragt sich nurnoch wie ich eine Schleife daraus mache, so das er solange Fragt bis der richtige Ordner gewählt wurde :-)

sx2008 22. Dez 2009 22:41

Re: Dateipfad angeben
 
Warum nimmst du nicht die TOpenDialog-Komponente mit dem der Benutzer direkt die Config Datei auswählen kann?
Der Dateiname samt Endung kann in der Komponente voreingestellt werden.
Dies würde dem Benutzer auch die Kontrolle über das Programm geben.
Kontrolle bedeutet, dass der Benutzer auch jederzeit den Vorgang abbrechen kann.
Deine Idee zur Pfadeingabe in einer Schleife würde den Benutzer nur unnötig bevormunden.

RedShakal 7. Jan 2010 14:35

Re: Dateipfad angeben
 
Ich möchte aber bezwecken das der Ordner ausgewählt wird, weil es auch eine Map Datenbank gibt die die Maps direkt in den Map Ordner laden soll.

Luckie 7. Jan 2010 14:39

Re: Dateipfad angeben
 
Wenn die zusätzlichen Dateien im gleichen Ordner liegen, wie die Konfigurationsdatei und du den Pfad mit Dateinamen zur Konfigurationsdatei (x:\Ordner1\Ordner2\config.ini) hast... Jetzt denk mal weiter... ;)


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