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

Вниз

Копирование файла   Найти похожие ветки 

 
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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.009 c
2-1240588841
@!!ex
2009-04-24 20:00
2009.06.14
Помогите собрать RegExp


15-1239392544
gost
2009-04-10 23:42
2009.06.14
скрытый запуск приложения


15-1239189575
VoznikVopros
2009-04-08 15:19
2009.06.14
Как перенести компоненты InterBase без потери функциональности?


6-1203017466
Andrewtitoff
2008-02-14 22:31
2009.06.14
Почему сообщения отсылаются не попорядку?... =(((


15-1239046670
Nic
2009-04-06 23:37
2009.06.14
Автовыравнивающаяся табличка html