Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Dateien aus dem Netzwerk kopieren (Abbruch) (https://www.delphipraxis.net/164947-dateien-aus-dem-netzwerk-kopieren-abbruch.html)

Pegasus0211 7. Dez 2011 08:31

Dateien aus dem Netzwerk kopieren (Abbruch)
 
Guten Morgen,

habe folgendes Problem:

Wir haben in der Firma ein Laufwerk im Netz, auf dem die Grafiken der Archäologie abgelegt sind. Leider sind diese Grafiken auf der ganzen Platte verstreut; zum Verkleinern der Dateigrößen durchsuchte ich die Platte und vermerkte Ursprungs-Pfad und andere Datei-Attribute in einer ABS-Datenbank.

Beim Kopieren lese ich die Datenbank und erstelle auf der leeren Festplatte ein Verzeichnis mit der ID aus der DB als Bezeichnung; so habe ich für spätere Zurückkopier-Aktionen eine eindeutige Pfad-Zuordnung.

ich kopiere mit folgender Funktion:

Delphi-Quellcode:
function Tform1.CopyFileEx(const ASource, ADest: string;
  ARenameCheck: boolean = false): boolean;
var
  sh: TSHFileOpStruct;
begin
  sh.Wnd := Application.Handle;
  sh.wFunc := FO_COPY;


  // String muss mit #0#0 Terminiert werden, um das Listenende zu setzen
  sh.pFrom := PChar(ASource + #0);
  sh.pTo := PChar(ADest + #0);
  sh.fFlags := fof_Silent or fof_MultiDestFiles;
  if ARenameCheck then
    sh.fFlags := sh.fFlags or fof_RenameOnCollision;
  Result:=ShFileOperation(sh)=0;
end;
Das funktioniert auch super; aber z.B. in einem Verzeichnis bricht er nach der Datei 101.jpg ab und kann angeblich 278 Dateien nicht lesen - danach kopiert er wieder anstandslos weiter.

Wenn ich die Dateien manuell kopiere (kopieren - einfügen), funktioniert es einwandfrei; nur Delphi tut sich schwer.

Hat Jemand von Euch eine Idee, woran es liegen könnte.

Danke schonmal für Eure Hilfe.

Gruß Bernd

himitsu 7. Dez 2011 09:27

AW: Dateien aus dem Netzwerk kopieren (Abbruch)
 
Zitat:

Zitat von Pegasus0211 (Beitrag 1139955)
aber z.B. in einem Verzeichnis bricht er nach der Datei 101.jpg ab und kann angeblich 278 Dateien nicht lesen

Woher kommt denn diese Meldung/Information?

Den Rückgabewert von ShFileOperation wertest du ja nicht "entsprechend" aus.
Und GetLastError kann man hier vergessen.


Zitat:

fof_MultiDestFiles
Kopierst du nun jeweils nur eine Datei oder doch Mehrere?

Zitat:

angeblich 278 Dateien nicht lesen
Fehlende Rechte oder noch geöffnet?

jobo 7. Dez 2011 09:29

AW: Dateien aus dem Netzwerk kopieren (Abbruch)
 
Gleicher Benutzer in beiden Fällen? Ich würde auf Rechteprobleme tippen.
GetLastError hilft bestimmt weiter.
Oder gleich mit CopyFile ohne Ex und den Returnwert prüfen.

Ach ganz viel rot, egal.

Pegasus0211 7. Dez 2011 10:14

AW: Dateien aus dem Netzwerk kopieren (Abbruch)
 
Zitat:

Zitat von himitsu (Beitrag 1139967)
Zitat:

Zitat von Pegasus0211 (Beitrag 1139955)
aber z.B. in einem Verzeichnis bricht er nach der Datei 101.jpg ab und kann angeblich 278 Dateien nicht lesen

Woher kommt denn diese Meldung/Information?

Den Rückgabewert von ShFileOperation wertest du ja nicht "entsprechend" aus.
Und GetLastError kann man hier vergessen.

Ich lasse mir jetzt den SH-Wert in einer Messagebox ausgeben; dort steht der Wert 1026 drin.

Das gleiche Problem hattest Du auch schonmal; 1995 beim Löschen von Dateien:

http://www.delphipraxis.net/55592-sh...or-1026-a.html


Wie hast Du es damals gelöst; erinnerst Du Dich vielleicht..?

LG Bernd

Pegasus0211 7. Dez 2011 10:55

AW: Dateien aus dem Netzwerk kopieren (Abbruch)
 
Nachtrag:

Fehlermeldung im Klartext lautet:

Die Quelldatei oder vom Quelllaufwerk kann nicht gelesen werden.


hmmm, ist doch unlogisch, da ich andere Dateien aus dem selben Verzeichnis erfolgreich kopiere...oder bin ich jetzt total auf dem Holzweg?


LG Bernd

Luckie 7. Dez 2011 11:00

AW: Dateien aus dem Netzwerk kopieren (Abbruch)
 
Sind die betreffenden Dateien eventuell geöffnet? Sind es immer die gleiche oder immer andere?

Pegasus0211 7. Dez 2011 11:46

AW: Dateien aus dem Netzwerk kopieren (Abbruch)
 
Zitat:

Zitat von Luckie (Beitrag 1139993)
Sind die betreffenden Dateien eventuell geöffnet? Sind es immer die gleiche oder immer andere?

Es sind immer die selben Dateien; sie sind nicht in Benutzung.


Gruß Bernd

Pegasus0211 8. Dez 2011 08:58

AW: Dateien aus dem Netzwerk kopieren (Abbruch)
 
Guten Tag,

habe das Problem zwar noch nicht gelöst, aber ich weiß jetzt, woran es liegt. :oops:

In den Pfadnamen existieren ganz merkwürdige Konstruktionen mit Punkten und Semikola, aber die Krönung ist dieser Dateiname eines Bildes:

Abb. 3 1. Ein erster Farbauftrag erfolgte in Grau. Als Farbsystem wurde eine Silikonharzfarbe verwendet.jpg

:shock:

Danke für Eure nette Hilfe; mit solchen Dateinamen hatte ich wirklich nicht gerechnet, an den Punkten (.) scheitert die Kopierarbeit - trotz durchgehender Hochkommata.

LG Bernd

haentschman 8. Dez 2011 09:15

AW: Dateien aus dem Netzwerk kopieren (Abbruch)
 
:lol: ist ja echt kreativ... Aber bei solchen Auswüchsen wünscht man sich dann doch DOS zurück. :zwinker:


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