Получение уведомлений, когда пользователь пытается отправить SMS

#c #windows-mobile #embedded

Вопрос:

Мое приложение реализовано как служба (работает под services.exe). Я добавляю новую функцию, которая требует уведомления, когда пользователь отправляет SMS.

Я пробовал использовать IMAPIAdviseSink , регистрироваться в обоих IMAPISession и IMsgStore , но я не получаю никаких уведомлений.

Другие варианты, которые я вижу, — это создание поставщика услуг коротких сообщений или реализация IFormProviderEx интерфейса, но я не уверен в том, как это может повлиять на функциональность SMS и пользовательский интерфейс.

Есть ли какой-либо способ, с помощью которого мое приложение может надежно получать уведомления о создании SMS-сообщений в папке «Исходящие»?

правка: Приложение написано на родном языке C . Я изучил RIL и несколько других API, но могу найти только информацию о получении уведомлений о входящих SMS-сообщениях.

Хорошо, еще немного информации: Тот же код для регистрации моих IMAPIAdviseSink работ в автономном приложении. Это всего лишь неспособность получать уведомления в службе.

Есть ли в любом случае возможность получать уведомления в моем сервисе? Или мне нужен отдельный процесс для отслеживания событий SMS и уведомления моей службы?

Марк

Ответ №1:

Вы не можете использовать IMAPIAdviseSink сервис.

Вам нужно использовать его из отдельного процесса и уведомлять службу о событиях, которые вас интересуют.

Ответ №2:

правка: упс, пропустил, что сообщение создавали пользователи, а не входящие.

Вы нацелены на Windows mobile 5 ?

Я думаю, что вы ищете класс MessageInterceptor в Microsoft.ВиндоусМобиль.Карманный бумажник.Пространство имен MessageInterception.

Вот ссылка на пример кода: http://www.knowdotnet.com/articles/smartphonesms.html

Питер Фут включил аналогичную функцию в свои библиотеки In the Hand, они могут позволить вам сделать то же самое на более ранней версии pocket pc.