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

Вниз

Индикатор процесса копирования файлов   Найти похожие ветки 

 
Raduga   (2003-11-04 16:22) [0]

Ребята, как вывести "живое успокоительное окно", если например в проге начинается копирование файлов большого объема. Прога, естественно ждет завершения копирования, а пользователь тем временем нервничает:" че-то программа зависла, что-ли". А так окошко бы висело с извенениями и надписью до завершения того-то осталось mm:ss.


 
Anatoly Podgoretsky ©   (2003-11-04 16:27) [1]

Какие именно затруднения, конкретизируй вопрос. Пока по теме можно ответить TProgressBar


 
ZEE ©   (2003-11-04 16:30) [2]

http://www.sources.ru/delphi/files/copying_files_with_dialog_box.shtml


 
alex_***   (2003-11-04 16:33) [3]

Использовать методы оболочки SHFileOperation. По-моему там копирование можно задать со стандартным индикатором


 
Raduga   (2003-11-04 16:36) [4]

Скажем нажатием на кнопку главной формы копируется файл А, большого размера, приложение ждет завершение процесса копирования. Хотя прога работает, но она не отвечает на действия пользователя. Мне нужно, чтобы пока файл копируется, появилось окно с тем же прогресбаром и текстом .


 
Amoeba   (2003-11-04 16:36) [5]

Читаем http://www.delphikingdom.com/mastering/fileshellapi.htm


 
alex_***   (2003-11-04 16:38) [6]

Не понял. Надо чтоб в процессе копирования окно не умирало?


 
Anatoly Podgoretsky ©   (2003-11-04 16:39) [7]

Значит есть какой то секретный код.


 
Raduga   (2003-11-04 16:40) [8]

А если не копирование, а вызывается какой-либо внешний процесс, как быть в этом случае.


 
Raduga   (2003-11-04 16:43) [9]

Ребята, шустро отвечаете, спасибо огромное. Не успеваю за вамию


 
Anatoly Podgoretsky ©   (2003-11-04 16:46) [10]

Это забота внешнего процесса


 
alex_***   (2003-11-04 16:49) [11]

С внешним процессом будут проблемы синхронизации: нужно узнать когда он закончит копирование. А если ждать завершения, то окно не будет реагировать на внешнее воздействие.


 
Raduga   (2003-11-04 16:56) [12]

Значит нельзя "оживить" программу пока выполняется внешний процесс, который запущен из этой проги?


 
Anatoly Podgoretsky ©   (2003-11-04 17:03) [13]

Оживить можно, более того внешняя программа никак не мешает живости.


 
alex_***   (2003-11-04 17:04) [14]

Можно запустить процесс в другом потоке, поток встанет на ожидание, а потом асинхронно известит осн. программу о завершении. А можно использовать для ожидания вн. процесса ф-цию MsgWaitForMultipleObjects. Там есть параметр dwMask - события, которые будут обрабатываться асинхронно, что позволит программе отрисовываться. ПО кр. мере так написано.


 
alex_***   (2003-11-04 17:05) [15]

ошибся - д.б. MsgWaitForMultipleObjectsEx


 
Raduga   (2003-11-05 09:09) [16]

Спасибо за помощь. Вопрос перетекает в следующую ветку :).


 
Anatoly Podgoretsky ©   (2003-11-05 09:21) [17]

Аминь



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

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

Наверх




Память: 0.5 MB
Время: 0.031 c
1-56622
Samael6
2003-11-05 11:59
2003.11.17
TreeView + Сеть Microsoft Windows


1-56648
_незнайка_
2003-11-05 12:12
2003.11.17
В чем проблема?


14-56847
Dark Elf
2003-10-27 11:45
2003.11.17
Что такое hMutex?


14-56879
RoLeX
2003-10-26 19:14
2003.11.17
Дайте TserverSocket и TClientSocket!!


3-56460
Ryser
2003-10-25 17:08
2003.11.17
Транзакция