Как переназначить зеленую и красную кнопки на PocketPC?

Ответ: никак!

Оказывается, аппаратные кнопки «зеленая кнопка» (позвонить) и «красная кнопка» (повесить трубку) на уровне ОС целиком и полностью принадлежат процессу cprog.exe (системная звонилка, которая обрабатывает как входящие звонки, так и является наборщиком номера для исходящих), который, даже если его «убить», автоматически запускается каждую минуту процессом shell32.exe.

Эти кнопки можно переопределить для активного приложения (через Hook или через RegisterHotKey). Но на совсем, увы, их переопределить нельзя. Зато можно переопределить другие аппаратные кнопки карманного ПК. Для этого достаточно изменить значения в реестре по адресу

HKEY_LOCAL_MACHINE\Software\Microsoft\Shell\Keys

А я тем временем пытаюсь решить задачу переопределения стандартного приложения набора телефонного номера (cprog.exe) моим собственным. Как сделаю – отпишу как это получилось.

  • #1
    spamers, 20/03/2009 20:32

    «А я тем временем пытаюсь решить задачу переопределения стандартного приложения набора телефонного номера (cprog.exe) моим собственным. Как сделаю – отпишу как это получилось.»

    Здравствуйте, Григорий. По поводу подмены аппликейшна. Меня тоже интересует этот вопрос. Не могли бы вы рассказать ход выших изыскании? Буду очень благодарен.

  • #2
    Григорий, 20/03/2009 23:20

    Во-первых, заменить cprog.exe можно, если у вас есть Flat Release Directory и Platform Builder. Строите новый ROM, заменив в нем приложение.

    Во-вторых, можно попробовать заменить cprog.exe, если «грохнуть» его из списка задач и переписать в папке \Windows (должно сработать).

    В-третьих (это самый правильный путь) – расширить cprog.exe за счет встроенного механизма Phone Extension API (он подробно описан в OEM Documentation, которую можно скачать с сервера Microsoft через JetStream клиент).

    В Win Mobile есть огромные возможности расширения стандартного dialer/диалогов call history/движка cprog.exe и пр. по технологии Com Server. Пишете DLL, регистрируете ее в реестре и все. Не надо переписывать cprog.exe.

  • #3
    spamers, 23/03/2009 18:36

    Спасибо, Григорий, за ответ. Првые 2 способа можно также реализовать через создание cab, который будет ставить в \Windows приложение с именем cprog.exe. но этот вариант нам не подходит. Как вы правильно заметили, лучше менять поведение cprog.exe. Не могли бы вы пояснить подробнее об Phone Extension API, у нас не получается найти подобную документацию… Также не получается найти Microsoft OEM Documentation. Это документация к Platform Builder? Подскажите, пожалуйста ресурс. Спасибо.

  • #4
    Григорий, 24/03/2009 01:14

    OEM Documentation – это chm файл размером 54 мегабайта, в котором описаны все детали разработки и кастомизации Windows Mobile для OEM разработчиков (тех, кто выпускает мобильные устройства на рынок). Например, Sony-Ericsson. Из собственного опыта знаю, что данная документация доступна только под NDA при заключенном соглашении с Microsoft (хотя на самом деле секретного там вроде и нет ничего). Но все-таки. Просто так ее не скачать, только через JetStream client имея эккаунт Microsoft partner.

    Да, в ней написано много и того, что относится к AKU и Platform Builder. Но также и много того, что может пригодиться для application developerа

Ваши комментарии:

также вы можете зарегистрироваться
Подпишитесь на новые записи моего блога:
Добавить в закладки: (в том числе и в Twitter)

Читайте также:

  • Возможности Xperia X1
  • Это смартфон или карманный ПК?
  • Как убрать анимацию при Tap-And-Hold
  • Недокументированные трюки для Windows Mobile 6
  • Windows Mobile Power Manager