Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.01 c
14-56901
aga
2003-10-25 16:55
2003.11.17
NSIS


1-56631
rosl
2003-11-05 07:45
2003.11.17
даты на кварталы


6-56790
noname666
2003-09-12 14:32
2003.11.17
sendto


14-56865
анабО
2003-10-28 12:58
2003.11.17
!анабО


6-56802
Lony
2003-09-22 16:01
2003.11.17
Пинг





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский