Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi copyfile - leerzeichen (https://www.delphipraxis.net/18851-copyfile-leerzeichen.html)

nico44 25. Mär 2004 10:01


copyfile - leerzeichen
 
tach leutz,

ich hab ein kleines prob, tja für euch vielleicht klein für mich ein riesengrosses prob. :wall:

ich hab ein progi, welches dateien, welche in einer listview aufgelistet sind, auf einen entfernten client im lan kopiert.

das funzt eigentlich recht gut aber folgende zwei punkte sind noch offen:

- wenn die datei oder auch der ordner im pfad ein leerzeichen hat funzt gar nichts....

- wenn die datei grösser als 800kb ist sieht es so aus als würde das progi hängen aber machen tuts...

habt ihr vielleicht lösungsansätze zu diesen "kleinen" probs.

ich bin euch dankbar. :roll:

greetz
nico44

Generalissimo 25. Mär 2004 11:08

Re: copyfile - leerzeichen
 
das hängen vielleicht mit nem Thread umgehen (CopyFile in Thread auslagern), der dann vielleicht
aller x Sekunden eine Fortschrittsanzeige auffrischt.

Dax 25. Mär 2004 11:44

Re: copyfile - leerzeichen
 
Und beim CopyFile den Dateinamen in die doppelten Gänsefüßchen (") setzten.

nico44 25. Mär 2004 12:27

Re: copyfile - leerzeichen
 
hallihallo,

besten dank für die schnellen antworten. das mit den gänsefüsschen hab ich schon probiert funzt leider nicht:

Delphi-Quellcode:
var
  name : string;
  d : string;
...
p := '\\' + name + '\' + d + '\' + listview1.Items.Item[k].SubItems.DelimitedText;
s := listview1.Items.Item[k].Caption;
copyfile(pchar(s), pchar(p), true);

...
ich hab auch so probiert:

Delphi-Quellcode:
var
  name : string;
  d : string;
...
p := '"\\' + name + '\' + d + '\' + listview1.Items.Item[k].SubItems.DelimitedText + '"';
s := listview1.Items.Item[k].Caption;
copyfile(pchar(s), pchar(p), true);

...
geht aber nicht.

wie geht denn das mit nem thread, hab ich noch nie ausprobiert???

greetz
nico44

[edit=MrSpock]Code Tags angepasst. Mfg, MrSpock[/edit]

himitsu 25. Mär 2004 13:08

Re: copyfile - leerzeichen
 
Delphi-Quellcode:
copyfile(pchar('"' + s + '"'), pchar('"' + p + '"'), true);
Hier im Forum suchenThread >> Frage zu Treads

--------------------------------

wir haben hier keine HTML-Tag's, sondern BBCode's

[code]...[/code]
Code:
...
[delphi]...[/delphi] << damit wird sogar der Delphi-Syntax hervorgehoben ;)
Delphi-Quellcode:
Begin
  { XXX }
  A := B;
End;
oder du nimmst die netten Buttons über dem Eingabefeld (Delphi-Code ...)

Xeno-Sebi 25. Mär 2004 13:26

Re: copyfile - leerzeichen
 
hm...gibts vielleicht so ne ulrdecode funktion, die aus leerzeichen %20 macht?

himitsu 25. Mär 2004 13:49

Re: copyfile - leerzeichen
 
bin mir nicht sicher, aber StringReplace geht auch

Delphi-Quellcode:
S := StringReplace(S, ' ', '%20', [rfReplaceAll]) // Leerzeichen > %20
Delphi-Quellcode:
CopyFile(PChar('"' + StringReplace(s, ' ', '%20', [rfReplaceAll]) + '"'), PChar('"' + StringReplace(p, ' ', '%20', [rfReplaceAll]) + '"'), true);

nico44 26. Mär 2004 09:01

Re: copyfile - leerzeichen
 
tach leutz,

danke für die hilfe.

es waren nicht die leerzeichen, welche probleme machten, sondern die gänsefüsschen, welche delimitedtext macht.

hab nun

Code:
P := StringReplace(P, '"', '', [rfReplaceAll]);
gemacht und es funzt :bounce1: . danke für die hilfe. das mit dem thread muss ich noch probieren.

ps: habs mit code gemacht, danke für den hinweis... :wink:

greetz
nico44


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:54 Uhr.

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