AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

MoveFile funktioniert nicht

Ein Thema von TRUCKERmas · begonnen am 6. Sep 2012 · letzter Beitrag vom 6. Sep 2012
Antwort Antwort
TRUCKERmas

Registriert seit: 30. Apr 2009
16 Beiträge
 
Delphi 7 Enterprise
 
#1

MoveFile funktioniert nicht

  Alt 6. Sep 2012, 21:59
Delphi-Version: 7
Warum auch immer, weigert sich MoveFile meine Dateien zu verschieben, kann mir jemand sagen woran das liegen könnte?

Delphi-Quellcode:
      if FindFirst('*',faAnyFile,SR1) = 0 then
      repeat
         if not((SR1.Name='.') or (SR1.Name='..')) then
            MoveFile(PansiChar('"' + tempdir + '\' + SR1.Name + '"'),PansiChar('"' + path + extradir + skin + '\' + SR1.Name + '"'));
      until FindNext(SR1)<> 0;
      Findclose(SR1);
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.442 Beiträge
 
Delphi 12 Athens
 
#2

AW: MoveFile funktioniert nicht

  Alt 6. Sep 2012, 22:03
Vielleicht musst du tempdir mit in das FindFirst aufnehmen. Auf die Anführungszeichen kannst du wohl auch verzichten.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.682 Beiträge
 
Delphi 5 Professional
 
#3

AW: MoveFile funktioniert nicht

  Alt 6. Sep 2012, 22:10
Zwar nicht zum Thema, aber ich sage/schreibe es trotzdem: Ich glaube, du solltest einen genaueren Blick auf die Funktion Format() werfen, denn solche Verkettungen von Variablen und Strings sind unübersichtlich. Weiterhin gibt es eine Funktion namens AnsiQuotedStr() zum einfachen Hinzufügen von Anführungszeichen (zum Entfernen gibt's auch eine), aber natürlich schließe ich mich meinem Vorschreiber an: die Anführungszeichen sind wohl überflüssig.

MfG Dalai

Geändert von Dalai ( 6. Sep 2012 um 22:13 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#4

AW: MoveFile funktioniert nicht

  Alt 6. Sep 2012, 22:11
Ganz banal ist path,extradir und skin überhaupt vorhanden?
ggf. solltest Du mit pathexists und forcedirectory die entsprechenden Bedingungen prüfen bzw. herstellen.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#5

AW: MoveFile funktioniert nicht

  Alt 6. Sep 2012, 22:34
Wozu sind denn die " ?
Schau mal ins MSDN, was MoveFile wirklich haben will.

Dann sucht dein FindFirst nicht im selben Verzeichnis, wo das MoveFile arbeitet. (Pfadangabe vergessen)

Resourcenschutzblöcke solltest du dir auch mal angewöhnen. (Try-Finally)



Wieso kommt eigentlich niemand auf so saublöde Ideeen und prüft Rückgabewerte von aufgerufenen Funfktionen?

Siehe MSDN-Library durchsuchenMoveFile, MSDN-Library durchsuchenGetLastError, Delphi-Referenz durchsuchenSysErrorMessage, Delphi-Referenz durchsuchenRaiseLastOSError (Delphi-Referenz durchsuchenRaiseLastWin32Error)

Delphi-Quellcode:
if not MoveFile(PChar(....) then
  RaiseLastOSError;



Außerdem solltest du es lassen dynamische Funktionen mit statische Typen zu kombinieren.

MoveFileA + PAnsiChar + AnsiString
MoveFileW + PWideChar + WideString/UnicodeString
MoveFile + PChar + String
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 6. Sep 2012 um 22:39 Uhr)
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#6

AW: MoveFile funktioniert nicht

  Alt 6. Sep 2012, 22:58
Zitat:
Wozu sind denn die " ?
Vielleicht von VB übernommen

gruss
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#7

AW: MoveFile funktioniert nicht

  Alt 6. Sep 2012, 23:16
Auch wenn man in VB Strings mit " begrenzt (kenn ich ja auch von PHP und Co.), dann sollte bei aufruf der gleichen Funktion dort ebenfall kein " im String vorkommen.

Zitat:
'"' + Pfad + '"'
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:26 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