Логирование процесcа копирования на Delphi
Доброго времени суток.
Есть простейшая процедура копирования файла
Код:
....
CopyFile ('d:\1.txt','d:\2.txt',true);
....
Можно ли и какими методами результат этого процесса записать в лог файл?
В формате например: дата,время,имя файла, выполнено(не выполнено)
п.с. Либо это очень легко, либо очень сложно потому как ничего вразумительного при поиске не нашел.
Заранее всем откликнувшемся благодарен.
|
Цитата:
Цитата OkSherd
ожно ли и какими методами результат этого процесса записать в лог файл? »
|
Перед командой CopyFile дать команду записи в лог файл?
|
если много копифайлов, можно переопеределить CopyFile примерно так:
Код:
function CopyFile(f1,f2:pchar; fail_If_exist: boolean):boolean;
begin
//записать лог
...
//
// .. и скопировать
result:=windows.copyFile(f1,f2,fail_If_exist);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
copyFile('c:\1.txt','d:\1.txt',true); //вызовется копифайл, опеределенный выше, а не стандартный
end;
|
Цитата:
Цитата lxa85
Перед командой CopyFile дать команду записи в лог файл? »
|
Какую команду??? Есть ли какая нибудь функция или процедура логирования процесса копирования? Может я что то не понимаю или не правильно сформулировал вопрос. Для примера "нацарапал" батник
Код:
EHCO ON
SET DOWN=d:\
SET UP=c:\
FOR %%i IN (%UP%*.TXT) DO (
COPY %%i %DOWN% && 1>>log.Log echo %date%; %time:~0,-3%; %%~fi; Скопировано || 1>>log.Log echo %date%; %time:~0,-3%; %%~fi; Неудача)
в результате получился вот такой лог файл
Код:
19.09.2011; 8:39:06; C:\1.txt; Скопировано
Неужели такое невозможно сделать на delphi?
|
Цитата:
Цитата OkSherd
Неужели такое невозможно сделать на delphi? »
|
В кратце так.
1.Создай переменную типа TStringList при открытии формы (Str:=TStringList.Create).
2. И при выполнении действий (до, после, или получай из обработки ошибки) записуй в него нужную информацию - Str.Add('...').
3. При завершении программы сохрани Str.SaveToFile(Имя.log).
4. Освободи переменную (Str.Free).
|
Время: 09:47.
© OSzone.net 2001-