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

Вниз

файловые операции   Найти похожие ветки 

 
td   (2003-10-01 23:20) [0]

Мне надо программно скопировать файлы, а потом проделать с ними некоторые манипуляции. Как проконтролировать, чтобы сначала завершилась операция копирования (т.е. не просто команда системе ушла, а они действительно скопировались), а потом уже выполнялись какие-то другие функции?


 
Е-Моё имя ©   (2003-10-02 01:24) [1]

а разве операторы копирования асинхронные?


 
Ihor Osov'yak ©   (2003-10-02 02:04) [2]

2 [1] Е-Моё имя © (02.10.03 01:24)

Ты удивишься, но операции копирования можно запустить в ассинхронном режиме..


 
Ihor Osov'yak ©   (2003-10-02 02:24) [3]

2 td (01.10.03 23:20)
Ответ по существу..

Если пользуемся низкоуровневыемими файловыми операциями, то для ассинхронного ввода-вывода для CreareFile юзаем флаг FILE_FLAG_OVERLAPPED,
а потом для функций ReadFile и WriteFile используем структуру OVERLAPPED,
с последующим WaitForSingleObject.. В общем, смотри Рихтера - там это подробно..

Второй вариант - SHFileOperation, _SHFILEOPSTRUCT, и ICopyHook::CopyCallback


 
Anatoly Podgoretsky ©   (2003-10-02 06:57) [4]

Покажи как копируешь



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
14-40607
афвуд
2003-09-24 21:13
2003.10.13
Надо мне свой Инспектор обьектов написать.


11-40334
Separotor
2003-01-30 17:59
2003.10.13
[Fatal Error] Klabel.pas(23): File not found: DsgnIntf.dcu


3-40296
lamer1
2003-09-22 14:11
2003.10.13
TSocketConnection


3-40238
Sable
2003-09-23 23:36
2003.10.13
Вставка записей в таблицу


3-40250
alex-ran
2003-09-22 11:04
2003.10.13
Выборка из таблиц с разными алиасами