![]() |
|
Модераторы: Alexeis |
![]()
|
|
| ksili |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2069 Регистрация: 3.11.2005 Где: Красноярск Репутация: нет Всего: 17 |
Мне надо, чтобы программа работала в скрытом виде, без окна, периодически выполняя определённые действия. Обнаружил, что консольная программа в WM как раз никак не видна. Подходит ли она для этой цели или могут быть какие-то проблемы?
-------------------- Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с) |
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 4 Всего: 459 |
Так ты просто не создавай окно совсем и программа будет невидимой. Windows приложение прекрасно работает и без окон. Самые насущные сообщения отправляются в очередь обработки сообщений потока. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| ksili |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2069 Регистрация: 3.11.2005 Где: Красноярск Репутация: нет Всего: 17 |
Alexeis, спасибо.
Я уже чуть-чуть по-другому придумал. Вообще, у меня есть уже программа, с окном. Но в WM юэеру обычно обломно, что что-то висит на экране, может просто закрыть или выгрузить. А надо чтобы программа была в памяти постоянно. Поэтому думал разделить код так: все настройки в проге с окном, а основная работа - в консольной программе. Но сейчас придумал, как ещё больше сократить работу по переделке: екзешник будет один - тот же что и был. Но запускаться он будет с разными параметрами командной строки. Если пар-ра нет - то покажет настройки, если есть - то выполнит нужную работу и опять спать. Запуск в нужный момент будет устанавливать себе сама же - функцией CeRunAppAtTime. Вот только я тут немного не знаю ещё как это делается (если кто делал, поделитесь): во-первых, как в WM свернуть программу, не выгружая её. Я посылал WM_SHOWWINDOW с параметром SW_HIDE. Такое ощущение, что оно выгружается. во-вторых, вот загружается программа, ищет нет ли уже запущенного экземпляра, если его нет, то в принципе понятно, а если есть, то что? Надо слать какое-то сообщение? Надо регистрировать свое сообщение или можно слать WM_COMMAND с каким-то своим параметром? Добавлено через 8 минут и 14 секунд
а нет, вроде бы просто сворачивается. Но вот мне нужно чтобы его не было в списке загруженных программ. Как-то надо скрыть. -------------------- Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с) |
|||
|
||||
| ksili |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2069 Регистрация: 3.11.2005 Где: Красноярск Репутация: нет Всего: 17 |
Сворачивать получилось функцией SetWindowPos, вот только после этого оно некорректно разворачивается: заголовок и нижнее меню появляются, а клиентская часть не прорисовывается. Пробовал после SetWindowPos посылать WM_PAINT - не помогло.
-------------------- Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с) |
|||
|
||||
| ksili |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2069 Регистрация: 3.11.2005 Где: Красноярск Репутация: нет Всего: 17 |
Поправил параметры SetWindowPos и все нормально заработало. Программа скрывается и восстанавливается. Причём в списке загруженных программ её не видно, когда она свёрнута.
-------------------- Ничто так не развивает аналитическое мышление, как отладка сложной программы без возможности пошагового выполнения (с) |
|||
|
||||
![]()
|
| Правила форума "Программирование мобильных устройств" | |
|
|
Раздел посвящен программированию мобильных устройств. Все остальные вопросы по мобильным устройствам (КПК, смартфоны, телефоны, фотоаппараты и т.п), |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Платформы Windows Mobile и Windows Embedded | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |