Название: Статус батареи Отправлено: dd от Сентябрь 01, 2010, 05:53 Всем привет!
Перерыл весь инет, не нашел пока решения. Поставил Windows CE 5.0 STANDARD SDK совместно с QT, спасибо автору http://ufna.ru/2010/03/23/pna-mod-qt-4-wince-build . VC 2005. Все нормально работает, программы запускаются на девайсе. Возникла необходимость получать статус батареи. В инете куча инфы с использованием функций: Код: GetSystemPowerStatus В заголовочных файлах SDK их нет почему-то (автопоиском искал даже). Хотя товарищи упорно говорят обратное: http://msdn.microsoft.com/en-us/library/aa453172.aspx Этой ф-ии нет ни в winbase.h, ни в coredll.lib (я вручную описал функцию). Я уже пытался вынуть инфо по батарее из реестра по адресу HKEY_LOCAL_MACHINE - System\\State\\Battery, тщетно. Короче убил кучу времени. Нужна помощь. Спасибо. PS Уже собираюсь поставить QT Mobility, но ради этой функции что-то не хочется тянуть ее, да и не собирается у меня почему-то. Кстати может есть у кого опыт сборки этой библиотеки для wince + VC2005 ? Название: Re: Статус батареи Отправлено: pastor от Сентябрь 01, 2010, 10:55 PS Уже собираюсь поставить QT Mobility, но ради этой функции что-то не хочется тянуть ее, да и не собирается у меня почему-то. Кстати может есть у кого опыт сборки этой библиотеки для wince + VC2005 ? Какая версия Qt? Какая версия Qt Mobility? Лог сборки сюда. Название: Re: Статус батареи Отправлено: dd от Сентябрь 01, 2010, 16:55 Очень нужна помощь по основному вопросу о батарее.
По поводу Mobility: Код: http://qt.nokia.com/developer/new-qt-apis http://doc.qt.nokia.com/qtmobility-1.1-tp/installation.html#building-for-windows-ce Копирую все в папку, открываю консоль VC2005, захожу туда, набираю Код: configure Потом судя по мануалу надо набрать make. Ни программы ни команды такой нет у меня, набираю Код: nmake Лог длинный. Может быть я чего-то не так изачально делаю? [Добавлено] Запустил повторна nmake, вот что получилось: (http://s006.radikal.ru/i214/1009/1b/1e19b4fffb4bt.jpg) (http://radikal.ru/F/s006.radikal.ru/i214/1009/1b/1e19b4fffb4b.jpg.html) Название: Re: Статус батареи Отправлено: pastor от Сентябрь 01, 2010, 19:12 У тебя Qt Mobility 1.1.0. Для её сборки нужна Qt 4.7.0.
Далее: 1) Запускаем setcepaths скрипт 2) configure 3) nmake 4) nmake install Название: Re: Статус батареи Отправлено: dd от Сентябрь 01, 2010, 20:01 Спасибо, попробую - отпишу.
А ты юзал это творение? Как по оущениям? Сильно тяжелое? Не глючит? И при переходе с QT 4.6.3 на 4.7 у меня ничего не повалится? Название: Re: Статус батареи Отправлено: pastor от Сентябрь 01, 2010, 20:41 Спасибо, попробую - отпишу. А ты юзал это творение? Как по оущениям? Сильно тяжелое? Не глючит? Творение впринципе не тяжелое, с каждой очередной версией работает стабильнее, но глюки всеравно имеються. Приходиться багрепортить. API еще не стабильное. Даже на багфикс релизах наблюдались изменения в API. Ну, а вобщем, потихоньку начинать юзать можно )) И при переходе с QT 4.6.3 на 4.7 у меня ничего не повалится? Если не хочешь переходить на 4.7, то возьми Qt Mobility 1.0.2 Название: Re: Статус батареи Отправлено: dd от Сентябрь 01, 2010, 21:42 Качнул 1.0.2, набрал configure, сконфигурилось.
Дальше набрал "nmake" (http://s002.radikal.ru/i200/1009/fe/c758e0bc556bt.jpg) (http://radikal.ru/F/s002.radikal.ru/i200/1009/fe/c758e0bc556b.jpg.html) Название: Re: Статус батареи Отправлено: pastor от Сентябрь 01, 2010, 22:35 setcepaths скрипт запускал перед началом конфигурации? Выполни поиск на предмет gpsapi.h.
Дрйгой вариант это собрать только нужный тебе модуль, например: configure -modules <нужный модуль> <...> Название: Re: Статус батареи Отправлено: dd от Сентябрь 01, 2010, 23:05 Ну вот полый лог моих действий:
(http://i064.radikal.ru/1009/1a/b28ef8e276e7t.jpg) (http://radikal.ru/F/i064.radikal.ru/1009/1a/b28ef8e276e7.jpg.html) (http://s39.radikal.ru/i084/1009/62/cecdd4c899aet.jpg) (http://radikal.ru/F/s39.radikal.ru/i084/1009/62/cecdd4c899ae.jpg.html) (http://s003.radikal.ru/i204/1009/21/5025df89c8a8t.jpg) (http://radikal.ru/F/s003.radikal.ru/i204/1009/21/5025df89c8a8.jpg.html) Название: Re: Статус батареи Отправлено: pastor от Сентябрь 01, 2010, 23:44 Немогу найти информацию, какая минимальная версия CE должна быть. По предварительному поиску - 6.0.
Или возможно в стандартном SDK нет этих инклудов. Утверждать небуду. Название: Re: Статус батареи Отправлено: dd от Сентябрь 02, 2010, 08:27 Вопрос с батареей остается открытым (
Название: Re: Статус батареи Отправлено: kuzulis от Сентябрь 02, 2010, 09:05 А что мешает самому декларировать эти функции и вызывать их динамически из Kernel32.dll ?
- И вообще, для начала неплохо бы с просмотреть Kernel32.dll из WinCE на наличие этих API функций. Например каким нить просмотрщиком dll-лок типа плагина в TotalCommander. Название: Re: Статус батареи Отправлено: dd от Сентябрь 03, 2010, 08:13 Временно удалено автором.
|