在windows mobile 5.0下截获短信的方法技巧
记得microsoft有一篇文章是通过一个Dll截获windows mobile 2003系统下的短信,在windows mobile 5.0中我们就无须那么麻烦了。Microsoft对短信截获做了封装,提供了一个叫做MessageInterception的类!.net cf 2.0下只要引用Microsoft.WindowsMobile、Microsoft.WindowsMobile.PocketOutlook和Microsoft.WindowsMobile.PocketOutlook.MessageInterception几个单元即可使用该类截获短信。
windows mobile 5.0下基于.net cf 2.0截获短信非常简单,只需在项目的MainForm中定义如下处理即可:
// 初始化MessageInterceptor短信截获对象
private MessageInterceptor _SMSCatcher = new MessageInterceptor(InterceptionAction.NotifyAndDelete, true);
// 初始化短信过滤对象
private MessageCondition _SMSFilter = new MessageCondition();
//指定短信截获后的处理事件
_SMSCatcher.MessageReceived += new MessageInterceptorEventHandler(_SMSCatcher_MessageReceived);
//短信过滤设置
_SMSFilter.Property = MessageProperty.Body; //设置截获依据,这里为短信内容
_SMSFilter.ComparisonType = MessagePropertyComparisonType.StartsWith; //设置与截获依据的比对方式
_SMSFilter.CaseSensitive = true;
_SMSFilter.ComparisonValue = "welcome to mye homepage!"; //过滤字段内容
//
_SMSCatcher.MessageCondition = _SMSFilter;
void _SMSCatcher_MessageReceived(object sender, MessageInterceptorEventArgs e)
{
//截获的短信对象
SmsMessage mySMS = (SmsMessage)e.Message;
....
//其它处理
}
本文地址:http://www.45fan.com/dnjc/68315.html