现在的位置: 首页 > 综合 > 正文

『轉』WINCE下如何实现发短信

2012年08月12日 ⁄ 综合 ⁄ 共 1304字 ⁄ 字号 评论关闭

 

#include <sms.h>

#pragma comment(lib,"sms.lib")
void SendSMS1(LPCTSTR lpszMessage, LPCTSTR lpszRecipient,LPCTSTR lpszSMSC,BOOL bSendConfirmation, BOOL bUseDefaultSMSC)
{
SMS_HANDLE smshHandle; //短信句柄
SMS_ADDRESS smsaDestination;//接收号码
TEXT_PROVIDER_SPECIFIC_DATA tpsd;
SMS_MESSAGE_ID smsmidMessageID;
// 打开发送句柄
// 协议字符串,       SMS_MODE_SEND:发送模式 psmshHandle:返回的句柄 phMessageAvailableEvent:通知的事件
if(FAILED(SmsOpen(SMS_MSGTYPE_TEXT, SMS_MODE_SEND, &smshHandle, NULL)))
{
return;
}
// Create the destination address
//SMSAT_NATIONAL:国内电话 SMSAT_INTERNATIONAL:国际电话
smsaDestination.smsatAddressType = SMSAT_UNKNOWN;
_tcsncpy(smsaDestination.ptsAddress, lpszRecipient, SMS_MAX_ADDRESS_LENGTH);
// Set up provider specific data
memset(&tpsd, 0, sizeof(tpsd));
//tpsd.dwMessageOptions =  PS_MESSAGE_OPTION_NONE;
tpsd.dwMessageOptions =  PS_MESSAGE_OPTION_STATUSREPORT;//表示需要状态报告
tpsd.psMessageClass = PS_MESSAGE_CLASSUNSPECIFIED;
//PS_MESSAGE_CLASS0表示短信在被接收后立即显示且不存储在收件箱(称为闪信) 
//PS_MESSAGE_CLASS1表示一般的情况,被接收后存储到收件箱并发送一个确认回短信中心,发送方收到一个已被接收的状态报告。
tpsd.psReplaceOption = PSRO_NONE;
//手动清空头信息 
ZeroMemory(tpsd.pbHeaderData, sizeof(tpsd.pbHeaderData));         
tpsd.dwHeaderDataSize = 0; 
tpsd.fMessageContainsEMSHeaders = FALSE; 
tpsd.dwProtocolID = SMS_MSGPROTOCOL_UNKNOWN;
// Send the message, indicating success or failure
/*
*smshHandle: SmsOpen打开的句柄

抱歉!评论已关闭.