Форум: "Основная";
Поиск по всему сайту: 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.72 MB
Время: 0.046 c
7-70036           __Dima                2001-10-24 12:30  2002.04.22  
Защита программы


6-69967           fidget                2002-02-08 17:48  2002.04.22  
TWebBrowser и Ctrl+C/Ctrl+V


3-69705           stal67                2002-03-30 20:21  2002.04.22  
ComboBox для отображения связанных таблиц


3-69719           Nickolaus             2002-03-29 22:41  2002.04.22  
Как


14-70002          murdoc                2002-03-15 12:27  2002.04.22  
Улетный сайт - ADMISHA.H1.RU