在Windows Mobile 6上通过CEMAPI POOM发送短信
在Winodws Mobile上第三方软件一般是通过
1)调用SmsMessageSend API函数发送短信。
或者通过
2)CreateProcess或者ShellExecuteEx方式,调用命令(不含尖括号)
</windows/tmail.exe -service "SMS" -to "短信接收方号码" -body "短信内容">
下面的例子,就是调用Windows Mobile自带的短信程序(tmail.exe),编辑一条收件人为10086,短信内容为 CXYE,查询余额的短信。
/windows/tmail.exe -service "SMS" -to "10086" -body "KTIP1000"
最终效果如截图。
<Place Holder for SMS Send UI>
1)和2)这两种方法都有各自的优缺点。
第一种方法,短信发送成功后在微软自带的已发送邮件箱(Sent Items)中找不到已经发送的短信。发送失败也没有提示。当然可以自己硬行构造POOM的短信对象来实现这个不足。
第二种方法,就是通过tmail.exe -service "SMS" -to "" -body "" 的方法不能够自动发送短信,只是停留在编辑完成界面,还需要用户手动点击"发送"按钮,或者通过程序实现。
下面介绍一种方法既能够让已发短信出现在已发送邮件箱中,也能够将短信编辑完成后自动发送。
这就是通过CEMAPI来发送短信。这个在www.codeproject.com 上05年的一篇文章已经实现了。请原文请参考 http://www.codeproject.com/KB/mobile/SMS_CEMPI.aspx .
我使用和实践了这段代码,发现几个问题。
1)发送短信不成功后,短信会到草稿箱,但是点开改短信,再次发送时,就无法发送了。
<Place Holder for Screen shot>
此时,短信的内容放置到了主题(Subject)上,这和普通使用时候遇到的情况不一样,短信内容应该在正文(Body)中.
2)短信发送时候,需要设置一个参数,那就是本机号码。至于如何获得本机号码,是非常麻烦的。
3)此Sample是在EVC下编译的,而且缺少.rc2文件。虽然作者已经说明了如何解决。
但是我还是重新改写了以下,将所有的CComPtr<IMAPISession> 之类的定义改成了WM6上建议的IMAPISession
改正了 SendSMSMessage 函数的HRESULT 类型返回值 Return S_OK.
但是1)和2)的问题仍旧需要解决。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cjwn/archive/2009/02/08/3868466.aspx
分享到:
相关推荐
通过上述知识点的介绍,我们可以看到,在Windows Mobile平台上进行短信开发时,需要掌握一系列API函数的使用方法,包括发送短信的API函数(`SmsOpen`, `SmsSendMessage`, `SmsClose`)和接收短信的相关接口(`...
在这个"Windows Mobile 5.0 三十几个经典手机软件开发源码"的压缩包中,我们可能会找到一系列关于如何在Windows Mobile 5.0平台上进行软件开发的实例和学习资源。 1. **开发环境**:首先,你需要安装Microsoft的...
在Windows Mobile 6上开发应用,需要熟悉设备的API,包括Windows Mobile API和Pocket Outlook Object Model (POOM)。Windows Mobile API提供了对设备硬件和操作系统功能的访问,例如文件系统、网络连接和硬件设备...
Windows Mobile应用程序开发是一个涵盖多个方面的主题,主要针对在微软的移动操作系统上构建应用程序的技术和工具。Windows Mobile系统曾经是智能手机和平板电脑上广泛使用的平台,它提供了类似桌面计算机的功能,如...
在Windows Mobile平台上,开发人员经常会接触到一系列特定的技术和API,以构建高效且功能丰富的移动应用。这个名为"windows mobile 范例"的压缩包包含了多个示例项目,旨在教授初学者如何运用这些技术。以下是对每个...
- 实际设备测试:在不同型号的Windows Mobile设备上测试以确保兼容性。 - 应用部署:通过ActiveSync或Windows Mobile Device Center将应用安装到目标设备。 9. **安全性**: - 数据加密:保护用户数据的安全,...
根据给定文件的信息,我们可以提炼出一系列关于Windows Mobile实例开发的知识点,重点在于Windows Mobile下的Win32 API应用。以下是对这些知识点的详细介绍: ### 一、开发环境搭建 **概述**: - Windows Mobile...
poom组件不全,缺少pimstore.h
Poom是The PomodoroTechnique:registered:的简单而强大的计时器PomodoroTechnique:registered:是一种充分利用时间管理的方法。 您可以在此处获得免费的pdf文件,... 它是在处理2上编写的,并使用SQLite来存储您的番茄。
在Windows CE(简称WinCE)操作系统中,"wince 读取联系人信息"涉及到的是对个人存储区对象模型(Personal Information Manager Object Model,简称POOM)的操作。POOM是WinCE提供的一种API,用于管理和访问用户的...
ManagedPOOM 是 Pocket Outlook 对象模型的 .NET Compact Framework 包装器,该 API 用于处理 Windows Mobile 设备中的约会、任务、联系人和会议。