Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi blockade durch opendialog (https://www.delphipraxis.net/20796-blockade-durch-opendialog.html)

gwxxl 26. Apr 2004 12:15

Re: blockade durch opendialog
 
Liste der Anhänge anzeigen (Anzahl: 1)
*hust*

Hier mal das Prog im Anhang!

gwxxl 28. Apr 2004 14:11

Re: blockade durch opendialog
 
Liste der Anhänge anzeigen (Anzahl: 1)
*nochmalnachhilfefrag*

Gibts denn auch Fehler, die vielleicht vom Compiler ausgelöst werden?

[Edit]
Hab das Problem mal auf das Wesentliche gebracht: Immer wenn ich einen OpenDialog ausführe, dann funktioniert die SaveToFile-Methode von TStringList nicht mehr.
[/Edit]

Christian Seehase 28. Apr 2004 19:16

Re: blockade durch opendialog
 
Moin gwxxl,

ginge das Ganze auch gezippt?
Rar hab' ich nicht.

gwxxl 28. Apr 2004 19:18

Re: blockade durch opendialog
 
Liste der Anhänge anzeigen (Anzahl: 1)
da bitte

gwxxl 28. Apr 2004 19:28

Re: blockade durch opendialog
 
Liste der Anhänge anzeigen (Anzahl: 1)
achso, dass war jetzt das problem alleine. das ganze programm häng ich hier mal ran.

Christian Seehase 28. Apr 2004 20:15

Re: blockade durch opendialog
 
Moin gwxxl,

ich glaube, ich habe die Ursache für das Problem:

Deine Konstante für die Datendatei enthält nicht den Pfad, sondern nur den Dateinamen.
Dies hat zur Folge, dass bei Zugriffen auf die Datei als Verzeichnis das Arbeitsverzeichnis des Programmes verwendet wird.
Standardmässig ist dies das Programmverzeichnis.
Dadurch, dass Du den OpenDialog verwendest, ändert sich das Arbeitsverzeichnis auf das zuletzt dort ausgewählte, so dass beim nächsten Speichern die Datei in dem Verzeichnis abgelegt wird.

Abhilfe kannst Du auf zwei Wegen schaffen:
  1. In den Optionen des OpenDialog wird ofNoChangeDir auf true gesetzt
  2. Du setzt vor den Dateinamen (die Konstante) noch den Pfad des Programmes (ExtractFilePath(paramstr(0))+datafilename)). Um diese Auswertung nur einmal machen zu müssen speicherst Du den gesamten Pfad in einer Variablen, die Du, z.B. im initialization Abschnitt initialisierst

Ich würde die 2. Methode verwenden, da ich es selber nicht sonderlich schätze, wenn ich mit der Navigation im Dateisystem dauernd von Vorne anfangen muss.

gwxxl 28. Apr 2004 20:20

Re: blockade durch opendialog
 
Ahh! Vielen Dank, jetzt funktioniert es endlich. Da hätte ich eigentlich selber drauf kommen müssen! *peinlichfind*

mfg gwxxl


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:31 Uhr.
Seite 2 von 2     12   

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