Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Probleme mit Pfaden (https://www.delphipraxis.net/112692-probleme-mit-pfaden.html)

peacekeaper 25. Apr 2008 13:03


Probleme mit Pfaden
 
moin!
ok der letzte post war ein wenig konfus ^^

zur zeit speichert mein programm mit hilfe von
ExtractFilePath(Application.ExeName)
die datei in dem ordner in dem sich die exe befindet.

zur besseren übersicht würd ich aber gerne
zum einen, einen neuen ordner erstellen (kenne auch die function
forcedirectoy() verstehe jedoch nicht ganz wie sie funktioniert)

zum anderen, soll dieser ordner natürlich in dem ordner in der die exe liegt
enthalten sein.

der pfad heißt jetzt:
C:/Programme/Tagebuch/

ich würde aber gerne:
C:/Programme/Tagebuch/Gespeicherte Dateien

und da ich das ganze ja auch an anderen PCs verwenden möchte
muss sich das ganze variabel gestalten.

ich fasse nur kurz zusammen:
1) wie erstelle ich mit forcedirectory im ordner in dem die exe liegt einen neuen ordner,
oder brauche ich eine andere function!?
2) wie schaffe ich es dateien darin zu speichern?!


schonmal danke und bis dann ;)
mfg markus

s-off 25. Apr 2008 13:07

Re: Probleme mit Pfaden
 
Hallo,

erstmal heißt diese Funktion ForceDirectories()
Zweitens gibt es zu dieser Funktion einen Eintrag in der Delphi Hilfe.
Drittens solltest Du Dein Vorgehen hinsichtlich der eingeschränkten Rechte unter Vista nochmal überdenken.

Klaus01 25. Apr 2008 13:10

Re: Probleme mit Pfaden
 
zu 1.
Delphi-Quellcode:
  ForceDirectories(ExtractFilePath(ParamStr(0))+'Dein neues Verzeichnis');
zu 2.
Genauso wie Du die Daten in das aktulle Verzeichnis speicherst geht es
mit dem neuen Verzeichnis, Du musst es nur angeben.

3. solltest Du UserDaten nicht im ProgrammVerzeichnis oder darunter gespeichern.


Zitat:

Zitat von DelphiHilfe
function ForceDirectories(const Dir: string): Boolean;

Description

ForceDirectories creates a new directory as specified in Dir, which must be a fully-qualified path name. If the directories given in the path do not yet exist, ForceDirectories attempts to create them.

ForceDirectories returns True if it successfully creates all necessary directories, False if it could not create a needed directory.

Grüße
Klaus

DeddyH 25. Apr 2008 13:11

Re: Probleme mit Pfaden
 
Unter Vista wirst Du evtl. Probleme bekommen, aber versuch es mal so:
Delphi-Quellcode:
//Pfad zusammenbasteln
sPath := IncludeTrailingPathDelimiter(ExtractFilePath(ParamStr(0))) + 'Gespeicherte Daten';
//ggf. anlegen
if not DirectoryExists(sPath) then
  ForceDirectories(sPath);
//da ForceDirectories eine Prozedur und keine Funktion ist, prüfen
if DirectoryExists(sPath) then
  Memo1.Lines.SaveToFile(IncludeTrailingPathDelimiter(sPath) + 'Daten.txt')
else
  MessageBox(Handle,'Speicherpfad konnte nicht angelegt werden','Fehler',MB_OK or MB_ICONERROR);
[edit] Viel zu langsam :cry: [/edit]

Hansa 25. Apr 2008 13:16

Re: Probleme mit Pfaden
 
Und viertens meint er den Thread hier :

http://www.delphipraxis.net/internal...340&highlight=

Den hat er selber im Regen stehen lassen wegen eigener Antwort-Faulheit. :shock: Wenn das identische 2. Thema hier eine längere Lebensdauer hat, als der erste Thread : es wird offensichtlich keine Problemlösungsstrategie gesucht, sondern ein Silbertablett mit vollständiger Lösung und entsprechender Glaskugel. :mrgreen:

s-off 25. Apr 2008 13:17

Re: Probleme mit Pfaden
 
Zitat:

Zitat von DeddyH
[...]
//da ForceDirectories eine Prozedur und keine Funktion ist, prüfen
[...]

Ich widerspreche Dir nur ungerne, aber
Zitat:

ForceDirectories gibt den Wert true zurück, wenn es alle notwendigen Verzeichnisse erstellt hat, False, wenn das Verzeichnis nicht erstellt werden konnte.
:zwinker:

DeddyH 25. Apr 2008 13:29

Re: Probleme mit Pfaden
 
:oops: hätte doch mal in die Hilfe schauen sollen.

SirThornberry 25. Apr 2008 13:32

Re: Probleme mit Pfaden
 
Zitat:

Zitat von s-off
Hallo,

erstmal heißt diese Funktion ForceDirectories()
Zweitens gibt es zu dieser Funktion einen Eintrag in der Delphi Hilfe.
Drittens solltest Du Dein Vorgehen hinsichtlich der eingeschränkten Rechte unter Vista nochmal überdenken.

Viertens sollte er sein Vorgehen auch hinsichtilich der eingeschränkten Rechte under NT, XP, Windows 2000 etc. überdenken

peacekeaper 25. Apr 2008 14:09

Re: Probleme mit Pfaden
 
ja ich danke dir klaus01 ;)
ich glaub damit komme ich weiter

ahja ich hab kein vista ^^
aber was meint ihr mit eingeschrenkten rechten?!
heißt der rechner könnte das speichern verweigern?!

und zu dem silbertablett...
ich hab von speichern nunmal keine ahnung
und das mit dem
Zitat:

ForceDirectories gibt den Wert true zurück, wenn es alle notwendigen Verzeichnisse erstellt hat, False, wenn das Verzeichnis nicht erstellt werden konnte.
hat mich völlig planlos gemacht...

also mit
Delphi-Quellcode:
ForceDirectories(ExtractFilePath(ParamStr(0))+'Dein neues Verzeichnis');
erstelle ich den ordner...
aber das problem was ich habe ist, dass ich nicht weiß wie ich jetzt etwas darin
speichern kann!
ich kann ja nicht einfach einen pfad angeben oder doch?! weil das ganze ja immernoch
von dem pfad der exe abhängig ist und ich ja nicht jedes mal wenn ich speichern will einen
neuen ordner erstellen will

Klaus01 25. Apr 2008 14:14

Re: Probleme mit Pfaden
 
.. aber wenn Du einen Ordner estellt hast, kennst Du dessen Name.
Dann sollte es auch kein Problem sein diesen beim Speichern zu nutzen.

Grüße
Klaus


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:10 Uhr.
Seite 1 von 2  1 2      

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