Форум: "Начинающим";
Текущий архив: 2009.06.14;
Скачать: [xml.tar.bz2];
ВнизКопирование файла Найти похожие ветки
← →
rar (2009-04-28 11:46) [0]Копирую файл следующей функцией
function MyCopyFile(const Src, Dest: string):Integer;
//копируем файл Src в Dest
var
f : TSHFileOpStruct;
begin
try
with f do
begin
Wnd:=0;
wFunc:=FO_COPY;
pFrom:=PChar(Src);
pTo:=PChar(vDisk+"\"+Dest);
fFlags:=FOF_ALLOWUNDO or FOF_NOCONFIRMATION ;
fAnyOperationsAborted := False;
hNameMappings := nil;
lpszProgressTitle := nil;
//F.fAnyOperationsAborted:=False;
end;
Result:=ShFileOperation(f);
except
Result:=-1;
//MessageDlg("ERROR COPY",mtInformation,[mbOK],0);
end;
end;
Если при копировании произошла ошибка то появляется сообщение и далее я не попадаю в блок except;
Проблема в том что не надо выводить сообщение об ошибке достаточно получить результат операции
← →
Плохиш © (2009-04-28 12:29) [1]Во флаг добавь FOF_NOERRORUI
> далее я не попадаю в блок except;
Функции WinAPI не генерируют исключений делфи, проверяй возвращаемое ими значение.
← →
Anatoly Podgoretsky © (2009-04-28 12:50) [2]> () []
ShFileOperation ничего не знает про исключения Дельфи.
Ты должен анализировать возвращаемый код и правильно установить все параметры TSHFileOpStruct, их там много, один из них относится к подавлению окна с ошибкой..
← →
rar (2009-04-28 13:09) [3]всем спасибо результат получил
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2009.06.14;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.005 c