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

Вниз

Ошибка при вызове SHFileOperation после ForceDirectories   Найти похожие ветки 

 
pasha_golub ©   (2007-11-06 17:03) [0]

Смысл кода внизу:

edit2.text - путь, который должен быть создан
edit1.text - папка, которая должна быть скопирована в ранее созданный путь

Так вот если убрать ForceDirectories, то все работает тихо. Если нет, то ошибка: "Can"t read the source files" или что-то в этом роде. Дословно не помню, сорри.

Шо за мистика?

procedure TForm1.Button1Click(Sender: TObject);
var  SH_Info: TSHFileOpStruct;
begin
   if not ForceDirectories(edit2.text) then
    raise Exception.Create("Smth wrong");
   ZeroMemory(@SH_Info, SizeOf(SH_Info));
   SH_Info.pFrom := PChar(edit1.Text);
   SH_Info.Wnd := GetDesktopWindow;
   SH_Info.wFunc := FO_COPY;
   SH_Info.pTo := PChar(edit2.text);
   SH_Info.fFlags := FOF_NOCONFIRMATION or FOF_NOCONFIRMMKDIR or FOF_RENAMEONCOLLISION or FOF_SILENT;
   if SHFileOperation(SH_Info) > 0 then RaiseLastOsError;
end;


 
Johnmen ©   (2007-11-06 17:45) [1]

Ну что тут сказать? Читайте справку по SHFILEOPSTRUCT в MSDN. В частности про pFrom.


 
Rouse_ ©   (2007-11-06 17:47) [2]

Терминирующие нулики добавь...


 
Anatoly Podgoretsky ©   (2007-11-06 18:31) [3]

> pasha_golub  (06.11.2007 17:03:00)  [0]

Зачем нужен ForceDirectories, если используешь SHFileOperation


 
pasha_golub ©   (2007-11-07 09:44) [4]


> Johnmen ©   (06.11.07 17:45) [1]
>
> Ну что тут сказать? Читайте справку по SHFILEOPSTRUCT в
> MSDN. В частности про pFrom.
>


> Rouse_ ©   (06.11.07 17:47) [2]
>
> Терминирующие нулики добавь...

Спасибо, ребята. Позор мне. Помню шо заковыка была... Ужас. Я цельный день промучался.


> Anatoly Podgoretsky ©   (06.11.07 18:31) [3]
>
> > pasha_golub  (06.11.2007 17:03:00)  [0]
>
> Зачем нужен ForceDirectories, если используешь SHFileOperation
>

Там серия этих Форсов, создают необходимые пути поначалу. Думал, что в этом дело.


 
Anatoly Podgoretsky ©   (2007-11-07 09:58) [5]

> pasha_golub  (07.11.2007 09:44:04)  [4]

> Rouse_ ©   (06.11.07 17:47) [2]
>
> Терминирующие нулики добавь...

> Спасибо, ребята. Позор мне. Помню шо заковыка была... Ужас. Я цельный день промучался.

На этом многие спотыкаются. Большинство примеров в Сети имеют подобную ошибку.


 
pasha_golub ©   (2007-11-07 10:45) [6]


> Anatoly Podgoretsky ©   (07.11.07 09:58) [5]


> На этом многие спотыкаются.

Да самое обидно, что я уже пользовался этим SHFileOp, да не стал искать код. С наскоку решил. :)



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

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

Наверх




Память: 0.48 MB
Время: 0.024 c
15-1193237359
Real
2007-10-24 18:49
2007.12.02
Как починить доступ к web-страницам в Windows?


15-1193648707
vasIZmax
2007-10-29 12:05
2007.12.02
Наблюдение за гуглом (около «оффтоп»)


3-1184763707
tiktak
2007-07-18 17:01
2007.12.02
Преимущества создания баз данных при помощи MS Access и Delphi


15-1193766687
@!!ex
2007-10-30 20:51
2007.12.02
где почитать про дебагинг под Delphi


2-1194007806
MZ_Organize
2007-11-02 15:50
2007.12.02
раскалдка с англ. на рус. и с рус. на анлг