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

继续WINCE记录:

2013年05月04日 ⁄ 综合 ⁄ 共 1949字 ⁄ 字号 评论关闭

好长时间没有更新BLOG了,

发现得记录点东西,今天开始吧,先记载一小段

/WINCE可用的发送短信代码,魅族M8测试成功

  1. /************************************
  2. * 调用范例:
  3. * SendSMS(_T("+8613xxxxxxxxx"),_T("测试~"));
  4. *
  5. * Author:LOJA
  6. * Version: 1.0.1.0
  7. * Date: 2009/07/30
  8. *
  9. * Smartphone Platforms: Smartphone 2002 and later
  10. * OS Versions: Windows CE 3.0 and later
  11. *
  12. *************************************/
  13. #include <sms.h>
  14. #pragma comment(lib,"sms.lib")
  15. bool SendSMS(IN LPCTSTR lpNumber,IN LPCTSTR lpszMessage)
  16. {
  17.         HRESULT hRes;
  18.         SMS_HANDLE   smsHandle=NULL;
  19.         SMS_ADDRESS   smsaDestination;
  20.         SMS_MESSAGE_ID   smsmidMessageID=0;
  21.         TEXT_PROVIDER_SPECIFIC_DATA   tpsd;
  22.         hRes=SmsOpen(SMS_MSGTYPE_TEXT,SMS_MODE_SEND,&smsHandle,NULL);
  23.         if   (FAILED(hRes))
  24.         {
  25.                 return   false;
  26.         }
  27.         //地址方式注意国内号码前加"+86"
  28.         smsaDestination.smsatAddressType = SMSAT_INTERNATIONAL;
  29.         _tcsncpy(smsaDestination.ptsAddress, lpNumber,SMS_MAX_ADDRESS_LENGTH);
  30.         tpsd.dwMessageOptions  = PS_MESSAGE_OPTION_NONE;
  31.         //tpsd.dwMessageOptions =  PS_MESSAGE_OPTION_STATUSREPORT;//表示需要状态报告
  32.         tpsd.psMessageClass  = PS_MESSAGE_CLASS1;
  33.         //PS_MESSAGE_CLASS0表示短信在被接收后立即显示且不存储在收件箱(称为闪信)
  34.         //PS_MESSAGE_CLASS1表示一般的情况,被接收后存储到收件箱并发送一个确认回短信中心,发送方收到一个已被接收的状态报告。
  35.         ZeroMemory(tpsd.pbHeaderData, sizeof(tpsd.pbHeaderData));         
  36.         tpsd.dwHeaderDataSize = 0;
  37.         tpsd.fMessageContainsEMSHeaders = FALSE;
  38.         tpsd.dwProtocolID = SMS_MSGPROTOCOL_UNKNOWN;
  39.         tpsd.psReplaceOption = PSRO_NONE;
  40.         hRes= SmsSendMessage(smsHandle,
  41.                 NULL,   
  42.                 &smsaDestination,   
  43.                 NULL,
  44.                 (PBYTE)lpszMessage,   
  45.                 _tcslen(lpszMessage) *  sizeof(TCHAR),   
  46.                 (PBYTE)&tpsd,
  47.                 sizeof(TEXT_PROVIDER_SPECIFIC_DATA),   
  48.                 SMSDE_OPTIMAL,   
  49.                 SMS_OPTION_DELIVERY_NONE,
  50.                 &smsmidMessageID);
  51.         SmsClose(smsHandle);
  52.         if   (SUCCEEDED(hRes))
  53.         {
  54.                 return true;
  55.         }
  56.         else
  57.         {
  58.                 return false;
  59.         }
  60. }

抱歉!评论已关闭.