Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.22;
Скачать: [xml.tar.bz2];




Вниз

Использование CheckBox... 


inko   (2002-04-09 15:40) [0]

Использование CheckBox...

Мне нужно, чтобы пользователь, поставив флажок на CheckBox2, и нажав кнопку Button7
задействовал функцию CopyFile(OpenDialog1.Filename, OpenDialog1.Filename), а убрав флажок из CheckBox2 эта функция пропускалась бы. Я сделал следующее... но почему-то выводится ошибка " I/O Error 32":

procedure TForm1.Button7CandgeClick(Sender: TObject);
begin

IF CheckBox2.Checked THEN
BEGIN

CopyFile(OpenDialog1.Filename, OpenDialog1.Filename); {создание резервной копии файла, который используеться системой}

END;

if ApplicationUse(OpenDialog1.Filename) then //проверка использования файла
CreateReplaceDialog(OpenDialog1.Filename, OpenDialog2.Filename) //создание диалога
else
ReplaceFile(OpenDialog2.Filename, OpenDialog1.Filename); {замена файла, если он не используется}
end;

Возможно, ошибка в procedure создания резервной копии файла, который используется системой:

procedure CopyFile(FromFileName, ToFileName : string);
var
FromFile, ToFile: File;
begin
AssignFile(FromFile, FromFileName);
AssignFile(ToFile, ToFileName + ".bak");
Reset(FromFile);
try
Rewrite(ToFile);
try
if LZCopy(TFileRec(FromFile).Handle, TFileRec(ToFile).Handle)<0 then
raise Exception.Create("Error create Backup file !")
finally
CloseFile(ToFile);
end;
finally
CloseFile(FromFile);
end;
end;



Darkwin   (2002-04-09 15:52) [1]

CopyFile(OpenDialog1.Filename, OpenDialog1.Filename);
Как это понимать? Копировать файл в себя самого? И где третий параметр: BOOL bFailIfExists?



inko   (2002-04-09 15:59) [2]

Да, но с расширением .bak, или так плохо ?
Может, подскажите как лучше сделать резервную копию, чтобы к копии файла просто добалялось .bak.



eSKey   (2002-04-09 16:01) [3]


> Darkwin

он использует собственную процедуру с именем CopyFile



Anatoly Podgoretsky   (2002-04-09 16:06) [4]

inko (09.04.02 15:59)
Исаользуй родной CopyFile



inko   (2002-04-09 16:57) [5]

> Darkwin ©

Да, возможно, тут я ступил,

CopyFile(OpenDialog1.Filename, OpenDialog1.Filename);

но как же создать резервную копию в в том же каталоге, где и оригинал?




Alex_R   (2002-04-09 17:37) [6]

А ChangeFilelExt не покатит?
CopyFile(OpenDialog1.Filename,
ChangeFilelExt(OpenDialog1.Filename, ".bak"));



inko   (2002-04-09 17:58) [7]

Попробую.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.22;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.047 c
14-70010          Nikolay               2002-03-15 12:11  2002.04.22  
Где можно почитать про итерацию?


3-69670           vopros                2002-04-03 11:50  2002.04.22  
Bde и xls и txt c разделителями tab


1-69897           ymin                  2002-04-09 13:56  2002.04.22  
Есть ли Help в минимальной установке Delphi 6?


1-69893           ymin                  2002-04-09 12:21  2002.04.22  
А как сделать, чтобы форма была или на весь экран или Minimize?


1-69912           CrazyXP               2002-04-08 20:19  2002.04.22  
Несколько вопросов