Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Копирование файла


rar ©   (2009-04-28 11:46:00) 

Копирую файл следующей функцией

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;
Проблема в том что не надо выводить сообщение об ошибкедостаточно получить результат операции


rar   (2009-04-28 13:09:00) [1]

всем спасибо результат получил


Anatoly Podgoretsky   (2009-04-28 12:50:00) [2]

>   ()  []

ShFileOperation ничего не знает про исключения Дельфи.
Ты должен анализировать возвращаемый код и правильно установить все параметры TSHFileOpStruct, их там много, один из них относится к подавлению окна с ошибкой..


Плохиш   (2009-04-28 12:29:00) [3]

Во флаг добавь FOF_NOERRORUI

> далее я не попадаю в блок except;

Функции WinAPI не генерируют исключений делфи, проверяй возвращаемое ими значение.


Наверх

Титульная страница Поиск, карта сайта Написать письмо