Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Shellfileoperation (Datei kann nicht kopiert werden) (https://www.delphipraxis.net/109790-shellfileoperation-datei-kann-nicht-kopiert-werden.html)

freeriders 7. Mär 2008 21:19

Re: Shellfileoperation (Datei kann nicht kopiert werden)
 
Ja GetCurrentDir verweist ja eigentlich auf das Verzeichnis, in dem die *.exe drin ist oder?
Vielleicht habe ich da auch etwas falsch verstanden.
So ich habe jetzt schonmal herausgefunden, dass wenn ich per Hand eine Verknüpfung erstelle, dass es dann funktioniert.
Das ist irgendwie ziemich seltsam...
Weeil in dem Ordner in dem die *.exe leigt sind auch die Ordner, von wo die Dateien kopiert werden.

ringli 7. Mär 2008 22:29

Re: Shellfileoperation (Datei kann nicht kopiert werden)
 
Probier statt deines
Delphi-Quellcode:
GetCurrentDir+'\ORG_Daten\fifa.db';
mal das hier:
Delphi-Quellcode:
ExtractFilePath(ParamStr(0)) + 'ORG_Daten\fifa.db';
GetCurrentDir liefert nur das aktuelle Verzeichnis in dem sich Windows grade befindet. Dieser Pfad wird schon durch das einfache Verwenden eines Öffnen- bzw. Speichern-Dialoges einer beliebigen Anwendung verändert. Daher dürften auch deine Probleme kommen.

[EDIT]
Alternativ kannst du auch
Delphi-Quellcode:
ExtractFilePath(Application.ExeName) + 'ORG_Daten\fifa.db';
verwenden.

freeriders 7. Mär 2008 23:02

Re: Shellfileoperation (Datei kann nicht kopiert werden)
 
[EDIT]
Alternativ kannst du auch
Delphi-Quellcode:
ExtractFilePath(Application.ExeName) + 'ORG_Daten\fifa.db';
verwenden.[/quote]

Ja sehr cool!
So hat sich das Problem (anscheinend) gelöst.
Funktioniert jetzt bei mir alles einwandfrei! :thumb:
Werden ihn jetzt mal an ein paar Leute zum tzesten schicken.

Luckie 8. Mär 2008 00:02

Re: Shellfileoperation (Datei kann nicht kopiert werden)
 
Zitat:

Zitat von freeriders
Delphi-Quellcode:
von1 := GetCurrentDir+'\ORG_Daten\fifa.db';

Mirror, mirror on the wall, which is the CurrentDirectory at all?

Es gibt wohl Dinge, die kann man noch predigen, wenn Microsoft schon Geschichte ist:
Zitat:

Retrieves the current directory for the current process.
Das aktuelle Verzeichnis, muss nicht zwiingend das Programverzeichnis sein!

Meine Vermutung: Er findet die Datei nicht. Was sagen den die Fehlercodes bzw. GetLastError?


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