Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.16;
Скачать: CL | DM;

Вниз

Копирование файлов   Найти похожие ветки 

 
Diller   (2005-09-01 08:59) [0]

Доброго времени суток! Прошу помочь с одной проблемой:
Мне нужно сделать программу одной из функций которой будет синхронизация файлов в различных папках. Во время рботы сттолкнулся с тем, что в Delphi отсутсвует процедура копирования файлов, а в ShellApi процедура CopyFile отказывается работать с String. Если сможете помочь - буду очень благодарен.


 
Goga   (2005-09-01 09:08) [1]


Windows
function WindowsCopyFile(FromFile, ToDir : string) : boolean;
var F : TShFileOpStruct;
begin
 F.Wnd := 0; F.wFunc := FO_COPY;
 FromFile:=FromFile+#0; F.pFrom:=pchar(FromFile);
 ToDir:=ToDir+#0; F.pTo:=pchar(ToDir);
 F.fFlags := FOF_ALLOWUNDO or FOF_NOCONFIRMATION;
 result:=ShFileOperation(F) = 0;
end;  

поток

Procedure FileCopy(Const SourceFileName, TargetFileName: String);
Var
 S,T   : TFileStream;
Begin
S := TFileStream.Create(sourcefilename, fmOpenRead );
try
 T := TFileStream.Create(targetfilename, fmOpenWrite or fmCreate);
 try
   T.CopyFrom(S, S.Size ) ;
   FileSetDate(T.Handle, FileGetDate(S.Handle));
 finally
  T.Free;
 end;
finally
 S.Free;
end;
end;

String --> PChar  
Var S: String;
   P: PChar;

P:=PChar(S);


 
Digitman ©   (2005-09-01 09:10) [2]


> в Delphi отсутсвует процедура копирования файлов


чтой-то вдруг ?
та самая CopyFile - она ж не на Луне, она  - в Делфи !


> процедура CopyFile отказывается работать с String


это не процедура, а функция.

MyBoolResult := CopyFile(PChar(MyStringVariable),  ...);


 
alex_***   (2005-09-01 09:12) [3]

ого... лихо. А просто вызвать CopyFile(PChar(src), PChar(dest), true) ?


 
wal ©   (2005-09-01 10:01) [4]


> синхронизация файлов в различных папках
> Win2k, WinXP
Может стоит подумать о HardLink"ах на NTFS"е

С уважением.


 
parashutist   (2005-09-14 11:54) [5]

Удалено модератором
Примечание: Задай вопрос в своей ветке



Страницы: 1 вся ветка

Текущий архив: 2005.10.16;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.071 c
2-1126675364
Express
2005-09-14 09:22
2005.10.16
Socket


14-1127816829
Agent13
2005-09-27 14:27
2005.10.16
Кто пользуется сетью MSN Messenger через Миранду, отзовитесь


9-1117733233
.cpp
2005-06-02 21:27
2005.10.16
Волшебная точка


1-1127451876
Геннадий
2005-09-23 09:04
2005.10.16
I/O error 32


14-1127466522
Форумщик
2005-09-23 13:08
2005.10.16
Мобильник Sony Ericsson K700