![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ProcessMessages в DLL
tp7 © (2013-03-21 17:12:00)внутри dll - TDataModule, dll - экспортирует некоторую функцию, которая может выполняться как от нескольких секунд так и до часа и больше. можно ли внутри dll вызывать ProcessMessages?
Сергей М. (2013-03-21 21:00:00) [1]
> можно ли внутри dll вызывать ProcessMessages?
Можно если вызывающий код "в курcе" о ProcessMessages.
Rouse_ (2013-03-21 20:32:00) [2]
> можно ли внутри dll вызывать ProcessMessages?
Можно. Хотя можно и аналог на PeekMessage + TranslateMessage + DispatchMessage развернуть, в данном случае не принципиально.
> Token (21.03.13 17:34) [2]
> 1. Для TComponent почему и нет?
Ты говоришь об этом так, как будто в этом есть что-то хорошее :)
> Token (21.03.13 17:42) [3]
> Мжно конечно передать в библиотеку Application
А вот это не нужно - в любом случае ничего хорошего из этого не выйдет.
> но наверно, "долгоиграющую" ф-ию лучше вызывать в отдельном
> потоке.
Если есть "долгоиграющая" функция то да, лучше пустить ее по отдельной нити и не забывать о каллбэках прогресса, дабы не мучатся с остановкой нити.
Ghost del vonte (2013-03-21 19:50:00) [3]Можно! (хотя, наверно может и не нужно, не знаю), у меня например в длл описаны все функции и процедуры сжатия, архиватор вызывает их оттуда, и так есть ProcessMessages...
По крайней мере я ни одной ошибки не видел, хотя в каждой процедуре у меня это есть!
Token (2013-03-21 17:42:00) [4]Мжно конечно передать в библиотеку Application, но наверно, "долгоиграющую" ф-ию лучше вызывать в отдельном потоке.
Token (2013-03-21 17:34:00) [5]1. Для TComponent почему и нет?
Ega23 (2013-03-21 17:30:00) [6]1. Зачем DataModule ВНУТРИ dll?
2. Зачем DLL-и ProcessMessages?