Главная страница
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.032 c
1-40391
xGhost
2003-10-01 07:35
2003.10.13
Поиск в listview


1-40513
Hatawa
2003-10-02 07:37
2003.10.13
Как распараллелить два процесса?


1-40504
Erik
2003-10-03 10:58
2003.10.13
Недебажится компонент.


9-40223
Огыек
2003-02-04 19:01
2003.10.13
ОПРОС!


6-40542
LLOyD
2003-08-16 03:03
2003.10.13
TClientSocket - Browser