Главная страница
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.049 c
3-56528
Шурик Ш
2003-10-29 17:04
2003.11.17
Добавление алеаса


1-56595
Марат
2003-11-06 09:32
2003.11.17
Edit


6-56805
Novenkij
2003-09-21 21:54
2003.11.17
Специ помогите. error Socket


3-56481
Denisiy
2003-10-28 15:58
2003.11.17
TStoredProc - ошибку выдает... Чего не хватает


1-56750
goliath
2003-11-06 15:57
2003.11.17
Приведите пожалуйста пример использования TVirtualTreeView