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

Вниз

Использование 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]

Попробую.



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

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

Наверх




Память: 0.48 MB
Время: 0.016 c
3-69752
alex_dorin
2002-03-29 11:02
2002.04.22
можно ли прервать sql_транзакцию при использов BDE


4-70072
Demn
2002-02-17 09:44
2002.04.22
Как перезагрузить чужую рабочую станцию?


1-69866
kalinka
2002-04-09 09:48
2002.04.22
Создание и удаление динамических массивов


14-70028
Новичок007
2002-03-18 17:18
2002.04.22
Помагите пож. очень важно...


1-69775
snoup
2002-04-07 21:38
2002.04.22
Как сделать скриншот своей проги?