Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.014 c
3-56499
stud
2003-10-28 10:40
2003.11.17
вопрос


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


6-56806
BlackSun
2003-09-21 21:50
2003.11.17
ОБратный вызов


14-56869
sapsi
2003-10-24 09:18
2003.11.17
ПРосмотр HTML страниц


7-56929
enty
2003-09-07 13:36
2003.11.17
Как програмно выключить копьютер




   Наверх