📄 otherdemodlg.cpp
字号:
// OtherDemoDlg.cpp : implementation file
//
#include "stdafx.h"
#include "CallSmsCom.h"
#include "OtherDemoDlg.h"
#include "XTTBasicDef.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern XTTSMSCOM::IModemServicePtr g_spiModemService;
HRESULT GetXMLChildNodeValue(MSXML2::IXMLDOMNodePtr& spiParentNode,CComBSTR bstrChildNodeName,CComBSTR& bstrChildNodeValue)
{
if(spiParentNode==NULL)
return E_INVALIDARG;
MSXML2::IXMLDOMNodePtr spiChildNode=NULL;
HRESULT hRet=spiParentNode->selectSingleNode(bstrChildNodeName,&spiChildNode);
if(FAILED(hRet))
return hRet;
if(spiChildNode!=NULL)
hRet=spiChildNode->get_text(&bstrChildNodeValue);
return hRet;
}
/////////////////////////////////////////////////////////////////////////////
// COtherDemoDlg dialog
COtherDemoDlg::COtherDemoDlg(CWnd* pParent /*=NULL*/)
: CDialog(COtherDemoDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(COtherDemoDlg)
m_strTelNumber = _T("");
m_strNewMsg = _T("");
m_strTransferInfo = _T("");
m_strXmlFile = _T("w:\\CustomDbConfig.xml");
m_strWapushContent = _T("欢迎您访问中国移动梦网WAP网站!(此信息免费)");
m_strWapushUrl = _T("http://wap.monternet.com");
m_iWaitCount = 0;
m_bAsynSend = TRUE;
m_bPushIndication = TRUE;
m_sSendPri = 16;
m_lValidMinute = 5;
m_sAction = -1;
m_strSendTo = _T("13910138186");
m_strSignName = _T("小沈");
//}}AFX_DATA_INIT
m_sSplitCount=0;
m_arrSendTo.RemoveAll();
}
void COtherDemoDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(COtherDemoDlg)
DDX_Control(pDX, IDC_DEMO_VALIDMINUTE, m_ctlValidMinute);
DDX_Control(pDX, IDC_DEMO_SIGNNAME, m_ctlSignName);
DDX_Control(pDX, IDC_DEMO_ACTION, m_ctlAction);
DDX_Control(pDX, IDC_DEMO_WAPUSHCONTENT, m_ctlContent);
DDX_Control(pDX, IDOK, m_ctlOK);
DDX_Control(pDX, IDC_DEMO_WRITETELNUM, m_ctlWriteTelNumber);
DDX_Control(pDX, IDC_DEMO_SMSDB, m_ctlSetSmsDb);
DDX_Control(pDX, IDC_DEMO_SETTRANSFER, m_ctlSetTransferTel);
DDX_Control(pDX, IDC_DEMO_SENDWAPPUSH, m_ctlSendPush);
DDX_Control(pDX, IDC_DEMO_READTELNUM, m_ctlReadTelNumber);
DDX_Control(pDX, IDC_DEMO_GETWAIT, m_ctlGetWait);
DDX_Control(pDX, IDC_DEMO_GETTRANSFER, m_ctlGetTransTel);
DDX_Control(pDX, IDC_DEMO_GETNEW, m_ctlGetNew);
DDX_Control(pDX, IDC_DEMO_BROWSE, m_ctlBrowse);
DDX_Text(pDX, IDC_DEMO_TELNUMBER, m_strTelNumber);
DDX_Text(pDX, IDC_DEMO_NEWMSG, m_strNewMsg);
DDX_Text(pDX, IDC_DEMO_TRANSFERINFO, m_strTransferInfo);
DDX_Text(pDX, IDC_DEMO_XMLSMSDB, m_strXmlFile);
DDX_Text(pDX, IDC_DEMO_WAPUSHCONTENT, m_strWapushContent);
DDX_Text(pDX, IDC_DEMO_WAPUSHURL, m_strWapushUrl);
DDX_Text(pDX, IDC_DEMO_SENDTO, m_strSendTo);
DDX_Text(pDX, IDC_DEMO_SIGNNAME, m_strSignName);
DDX_Text(pDX, IDC_DEMO_WAITCOUNT, m_iWaitCount);
DDX_Check(pDX, IDC_DEMO_ASYNSEND, m_bAsynSend);
DDX_Check(pDX, IDC_DEMO_PUSHWAPIND, m_bPushIndication);
DDX_Text(pDX, IDC_DEMO_SENDPRI, m_sSendPri);
DDV_MinMaxInt(pDX, m_sSendPri, 1, 32);
DDX_Text(pDX, IDC_DEMO_VALIDMINUTE, m_lValidMinute);
DDV_MinMaxLong(pDX, m_lValidMinute, 0, 4320);
DDX_CBIndex(pDX, IDC_DEMO_ACTION, m_sAction);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(COtherDemoDlg, CDialog)
//{{AFX_MSG_MAP(COtherDemoDlg)
ON_BN_CLICKED(IDC_DEMO_WRITETELNUM, OnDemoWritetelnum)
ON_BN_CLICKED(IDC_DEMO_READTELNUM, OnDemoReadtelnum)
ON_BN_CLICKED(IDC_DEMO_GETNEW, OnDemoGetnew)
ON_BN_CLICKED(IDC_DEMO_GETWAIT, OnDemoGetwait)
ON_BN_CLICKED(IDC_DEMO_GETTRANSFER, OnDemoGettransfer)
ON_BN_CLICKED(IDC_DEMO_SETTRANSFER, OnDemoSettransfer)
ON_BN_CLICKED(IDC_DEMO_SMSDB, OnDemoSmsdb)
ON_BN_CLICKED(IDC_DEMO_SENDWAPPUSH, OnDemoSendwappush)
ON_BN_CLICKED(IDC_DEMO_BROWSE, OnDemoBrowse)
ON_BN_CLICKED(IDC_DEMO_PUSHWAPIND, OnDemoPushwapind)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// COtherDemoDlg message handlers
BOOL COtherDemoDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
if(m_bPushIndication==TRUE)
{
m_ctlContent.EnableWindow(TRUE);
m_ctlSignName.EnableWindow(TRUE);
m_ctlValidMinute.EnableWindow(TRUE);
m_ctlAction.AddString(_T("信号-无"));
m_ctlAction.AddString(_T("信号-低"));
m_ctlAction.AddString(_T("信号-中等"));
m_ctlAction.AddString(_T("信号-高"));
m_ctlAction.AddString(_T("信号-删除"));
m_sAction=3;
}
else
{
m_ctlAction.AddString(_T("执行-高"));
m_ctlAction.AddString(_T("执行-低"));
m_ctlAction.AddString(_T("缓存"));
m_sAction=0;
m_ctlContent.EnableWindow(FALSE);
m_ctlSignName.EnableWindow(FALSE);
m_ctlValidMinute.EnableWindow(FALSE);
}
UpdateData(FALSE);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void COtherDemoDlg::OnDemoWritetelnum()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
m_strTelNumber.TrimRight();
m_strTelNumber.TrimLeft();
if(g_spiModemService==NULL || m_strTelNumber.IsEmpty()==TRUE)
return;
XTTSMSCOM::EMobileModemStatus eModemStatus=XTTSMSCOM::UNINIT_STATUS;
g_spiModemService->get_ModemStatus(&eModemStatus);
if(eModemStatus<XTTSMSCOM::OK_STATUS)
{
::MessageBox(this->GetSafeHwnd(),_T("还没有正常连接短信猫!"),XTTSOFT_SMS_APPNAME,MB_OK);
return;
}
//手机号码前要加国际代码86(表示中国)
CComVariant varTel(m_strTelNumber);
varTel.ChangeType(VT_BSTR);
g_spiModemService->put_SimTelCode(varTel);
CComVariant varErrDes;
XTTSMSCOM::EMobileErrorType eErrType=XTTSMSCOM::OK_ERRTYPE;
g_spiModemService->GetLastError(&varErrDes,&eErrType);//得到错误信息
if(eErrType==XTTSMSCOM::OK_ERRTYPE)
::MessageBox(this->GetSafeHwnd(),_T("设置成功!"),XTTSOFT_SMS_APPNAME,MB_OK);
}
void COtherDemoDlg::OnDemoReadtelnum()
{
// TODO: Add your control notification handler code here
if(g_spiModemService==NULL)
return;
XTTSMSCOM::EMobileModemStatus eModemStatus=XTTSMSCOM::UNINIT_STATUS;
g_spiModemService->get_ModemStatus(&eModemStatus);
if(eModemStatus<XTTSMSCOM::OK_STATUS)
{
::MessageBox(this->GetSafeHwnd(),_T("还没有正常连接短信猫!"),XTTSOFT_SMS_APPNAME,MB_OK);
return;
}
CComVariant varTelNumber;
g_spiModemService->get_SimTelCode(&varTelNumber);
if(varTelNumber.vt==VT_BSTR && varTelNumber.bstrVal!=NULL)
{
m_strTelNumber=varTelNumber.bstrVal;
UpdateData(FALSE);
}
}
void COtherDemoDlg::OnDemoGetnew()
{
// TODO: Add your control notification handler code here
if(g_spiModemService==NULL)
return;
XTTSMSCOM::EMobileModemStatus eModemStatus=XTTSMSCOM::UNINIT_STATUS;
g_spiModemService->get_ModemStatus(&eModemStatus);
if(eModemStatus<XTTSMSCOM::OK_STATUS)
{
::MessageBox(this->GetSafeHwnd(),_T("还没有正常连接短信猫!"),XTTSOFT_SMS_APPNAME,MB_OK);
return;
}
CComVariant varNewCount,varPosition;
g_spiModemService->GetNewMsgCount(&varPosition,&varNewCount);
CString strNewPosition(_T(""));
if(varPosition.vt==VT_BSTR && varPosition.bstrVal!=NULL)
strNewPosition=varPosition.bstrVal;
varNewCount.ChangeType(VT_I2);
int iNewCount=varNewCount.iVal;
if(iNewCount>0)
{
m_strNewMsg.Format(_T("新短信数量:%d,位置:%s"),iNewCount,strNewPosition);
UpdateData(FALSE);
}
}
void COtherDemoDlg::OnDemoGetwait()
{
// TODO: Add your control notification handler code here
if(g_spiModemService==NULL)
return;
XTTSMSCOM::EMobileModemStatus eModemStatus=XTTSMSCOM::UNINIT_STATUS;
g_spiModemService->get_ModemStatus(&eModemStatus);
if(eModemStatus<XTTSMSCOM::OK_STATUS)
{
::MessageBox(this->GetSafeHwnd(),_T("还没有正常连接短信猫!"),XTTSOFT_SMS_APPNAME,MB_OK);
return;
}
CComVariant varWaitCount;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -