123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669 |
- // VcDemoDlg.cpp : implementation file
- //
- #include "stdafx.h"
- #include "VcDemo.h"
- #include "VcDemoDlg.h"
- #include <afxsock.h>//<Winsock2.h>
- #ifdef _DEBUG
- #define new DEBUG_NEW
- #undef THIS_FILE
- static char THIS_FILE[] = __FILE__;
- #endif
- //---------------------------------------------------------------------------
- typedef char* (__stdcall *FnMongateGetVer)();
- typedef int (__stdcall *FnMongateChangePwd)(int sock, const char* pszAccount,
- const char* pszOldPwd, const char* pszNewPwd);
- typedef int (__stdcall *FnMongateConnect)(const char* pszIP, int iPort, const char* pszAccount,
- const char* pszPwd);
- typedef void (__stdcall *FnMongateDisconnect)(int sock);
- typedef int (__stdcall *FnMongateQueryBalance)(int sock);
- typedef int (__stdcall *FnMongateQueryUsed)(int sock);
- typedef int (__stdcall *FnMongateSendSms)(int sock, const char* pszMobis, const char* pszMsg);
- typedef int (__stdcall *FnMongateConnectSocks4Proxy)(const char* ,int ,const char* ,int ,const char* ,const char* );
- typedef int (__stdcall *FnMongateCsGetSms)(SOCKET , char [500][255]);
- typedef int (__stdcall *FnMongateVasGetSms)(SOCKET , char [500][255]);
- typedef int (__stdcall *FnMongateVasSendSms)(SOCKET , const char* , const char* , const char* , const char* ,const char* , const char* , int );
- typedef int (__stdcall *FnMongateCsSendSmsHttp)(SOCKET , const char* ,const char* , int , char* );
- typedef int (__stdcall *FnMongateTestConn)(SOCKET );
- typedef int (__stdcall *FnMongateCsGetStatusReport)(SOCKET , char [500][255]);
- typedef int (__stdcall *FnMongateCsSendSms)(SOCKET , const char* ,const char* , int , char* );
- typedef int (__stdcall *FnMongateConnectSocks5Proxy)( const char* , int ,const char* ,const char* ,const char* ,int ,const char* ,const char* );
- typedef int (__stdcall *FnMongateConnectHttpProxy)(const char*,int ,const char* ,const char* ,const char* , int , const char* , const char* );
- typedef int (__stdcall *FnMongateTestConnHttp)(int);
- typedef int (__stdcall *FnMongateCsGetSmsHttp)(SOCKET , char [500][255]);
- typedef int (__stdcall *FnMongateCsGetStatusReportHttp)(SOCKET , char [500][255]);
- typedef int (__stdcall *FnMongateConnectHttpProxy)(const char* pszProxyIP,
- int iProxyPort,const char* pszProxyAccount,const char* pszProxyPwd,
- const char* pszIP, int iPort, const char* pszAccount, const char* pszPwd);
- typedef int (__stdcall *FnMongateTestMsgEx)(SOCKET sock,const char* pStrMessage,char *keywords);
- typedef int (__stdcall *FnMongateTestMsgExHttp)(SOCKET sock,const char* pStrMessage,char *keyword);
- typedef int (__stdcall *FnMongateCsSPSendSmsNew)(SOCKET sock, const char* pszMobis,
- const char* pszMsg, int iMobiCount,const char* pszSubPort,char* pszSN);
- //---------------------------------------------------------------------------
- HMODULE g_hDll;
- FnMongateGetVer MongateGetVer;
- //tcp/ip method
- FnMongateTestMsgEx MongateTestMsgEx;
- FnMongateTestMsgExHttp MongateTestMsgExHttp;
- FnMongateConnect MongateConnect;
- FnMongateDisconnect MongateDisconnect;
- FnMongateChangePwd MongateChangePwd;
- FnMongateQueryBalance MongateQueryBalance;
- FnMongateQueryUsed MongateQueryUsed;
- FnMongateSendSms MongateSendSms;
- FnMongateCsGetSms MongateCsGetSms;
- FnMongateVasGetSms MongateVasGetSms;
- FnMongateVasSendSms MongateVasSendSms;
- FnMongateTestConn MongateTestConn;
- FnMongateCsGetStatusReport MongateCsGetStatusReport;
- FnMongateCsSendSms MongateCsSendSms;
- FnMongateConnectSocks4Proxy MongateConnectSocks4Proxy;
- FnMongateConnectSocks5Proxy MongateConnectSocks5Proxy;
- //http method
- FnMongateConnect MongateConnectHttp;
- FnMongateQueryBalance MongateQueryBalanceHttp;
- FnMongateQueryUsed MongateQueryUsedHttp;
- FnMongateSendSms MongateSendSmsHttp;
- FnMongateChangePwd MongateChangePwdHttp;
- FnMongateDisconnect MongateDisconnectHttp;
- FnMongateTestConnHttp MongateTestConnHttp;
- FnMongateCsSendSmsHttp MongateCsSendSmsHttp;
- FnMongateConnectHttpProxy MongateConnectHttpProxy;
- FnMongateCsGetSmsHttp MongateCsGetSmsHttp;
- FnMongateCsGetStatusReportHttp MongateCsGetStatusReportHttp;
- FnMongateCsSPSendSmsNew MongateCsSPSendSmsNew;
- /////////////////////////////////////////////////////////////////////////////
- // CVcDemoDlg dialog IDC_EDT_NUM
- int myflag=0;
- CVcDemoDlg::CVcDemoDlg(CWnd* pParent /*=NULL*/)
- : CDialog(CVcDemoDlg::IDD, pParent)
- {
- //{{AFX_DATA_INIT(CVcDemoDlg)
- m_strSendSms = _T("");
- m_strLoginID = _T("");
- m_strLoginPwd = _T("");
- m_strRecvMobi = _T("");
- m_strServiceNo = _T("");
- m_strFeeCode = _T("");
- m_strLinkID = _T("");
- m_strNewPwd = _T("");
- m_chkboth = FALSE;
- m_kfboth = FALSE;
- m_chksingle = TRUE;
- m_mobicount = 0;
- m_Port = 8018;
- m_ServerIp = _T("");
- m_bProxy = FALSE;
- m_Tcp = FALSE;
- //}}AFX_DATA_INIT
- // Note that LoadIcon does not require a subsequent DestroyIcon in Win32
- m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
- m_hsock = 0;
- }
- void CVcDemoDlg::DoDataExchange(CDataExchange* pDX)
- {
- CDialog::DoDataExchange(pDX);
- //{{AFX_DATA_MAP(CVcDemoDlg)
- DDX_Control(pDX, IDC_BTN_SEND, m_btnSend);
- DDX_Control(pDX, IDC_BTN_CONNECT, m_btnConn);
- DDX_Control(pDX, IDC_LST_SMS, m_listCtrl);
- DDX_Text(pDX, IDC_EDT_SMS, m_strSendSms);
- DDV_MaxChars(pDX, m_strSendSms, 2000);
- DDX_Text(pDX, IDC_EDT_LOGIN_ID, m_strLoginID);
- DDV_MaxChars(pDX, m_strLoginID, 11);
- DDX_Text(pDX, IDC_EDT_LOGIN_PWD, m_strLoginPwd);
- DDV_MaxChars(pDX, m_strLoginPwd, 6);
- DDX_Text(pDX, IDC_EDT_RECV_MOBI, m_strRecvMobi);
- DDX_Text(pDX, IDC_EDT_SERVICE_NO, m_strServiceNo);
- DDX_Text(pDX, IDC_EDT_FEE_CODE, m_strFeeCode);
- DDV_MaxChars(pDX, m_strFeeCode, 6);
- DDX_Text(pDX, IDC_EDT_LINKID, m_strLinkID);
- DDX_Text(pDX, IDC_EDT_NEW_PWD, m_strNewPwd);
- DDX_Check(pDX, IDC_CHK_BOTH, m_chkboth);
- DDX_Check(pDX, IDC_CHK_KFBOTH, m_kfboth);
- DDX_Check(pDX, IDC_CHK_SINGLE, m_chksingle);
- DDX_Text(pDX, IDC_EDT_NUM, m_mobicount);
- DDX_Text(pDX, IDC_EDT_PORT, m_Port);
- DDX_Text(pDX, IDC_EDT_SERVER, m_ServerIp);
- DDX_Check(pDX, IDC_CHK_PROXY, m_bProxy);
- DDX_Check(pDX, IDC_CHECKtcp, m_Tcp);
- //}}AFX_DATA_MAP
- }
- BEGIN_MESSAGE_MAP(CVcDemoDlg, CDialog)
- //{{AFX_MSG_MAP(CVcDemoDlg)
- ON_WM_PAINT()
- ON_WM_QUERYDRAGICON()
- ON_BN_CLICKED(IDC_BTN_CONNECT, OnBtnConnect)
- ON_BN_CLICKED(IDC_BTN_RECV, OnBtnRecv)
- ON_WM_DESTROY()
- ON_BN_CLICKED(IDC_BTN_SEND, OnBtnSend)
- ON_BN_CLICKED(IDC_BTN_QUERY, OnBtnQuery)
- ON_BN_CLICKED(IDC_BTN_Query2, OnBTNQuery2)
- ON_BN_CLICKED(IDC_BTN_CHANGE_PWD, OnBtnChangePwd)
- ON_BN_CLICKED(IDC_BTN_TEST_CONN, OnBtnTestConn)
- ON_BN_CLICKED(IDC_BTN_GET_STATUS, OnBtnGetStatus)
- ON_BN_CLICKED(IDC_CHK_SINGLE, OnChkSingle)
- ON_BN_CLICKED(IDC_CHK_BOTH, OnChkBoth)
- ON_BN_CLICKED(IDC_CHK_KFBOTH, OnChkKfboth)
- ON_BN_CLICKED(IDC_BTN_DISCONN, OnBtnDisconn)
- ON_BN_CLICKED(IDC_TYPE, OnType)
- ON_BN_CLICKED(IDC_CHK_PROXY, OnChkProxy)
- ON_BN_CLICKED(IDC_CHECKtcp, OnCHECKtcp)
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
- /////////////////////////////////////////////////////////////////////////////
- // CVcDemoDlg message handlers
- void LoadMWGateway()
- {
- char path[255] = {0};
- ::GetCurrentDirectory(255, path);
- strcat(path, "\\LYFZGateway.dll");
- if (NULL == (g_hDll = ::LoadLibrary(path)))
- {
- AfxMessageBox("加载LYFZGateway.dll失败!");
- exit(0);
- }
- MongateChangePwd = (FnMongateChangePwd)::GetProcAddress(g_hDll, "MongateChangePwd");
- MongateConnect = (FnMongateConnect)::GetProcAddress(g_hDll, "MongateConnect");
- MongateDisconnect = (FnMongateDisconnect)::GetProcAddress(g_hDll, "MongateDisconnect");
- MongateCsGetSms = (FnMongateCsGetSms)::GetProcAddress(g_hDll, "MongateCsGetSms");
- MongateVasGetSms = (FnMongateVasGetSms)::GetProcAddress(g_hDll, "MongateVasGetSms");
- MongateGetVer = (FnMongateGetVer)::GetProcAddress(g_hDll, "MongateGetVer");
- MongateTestConn = (FnMongateTestConn)::GetProcAddress(g_hDll, "MongateTestConn");
- MongateQueryBalance = (FnMongateQueryBalance)::GetProcAddress(g_hDll, "MongateQueryBalance");
- MongateVasSendSms = (FnMongateVasSendSms)::GetProcAddress(g_hDll, "MongateVasSendSms");
- MongateSendSms = (FnMongateSendSms)::GetProcAddress(g_hDll, "MongateSendSms");
- MongateQueryUsed = (FnMongateQueryUsed)::GetProcAddress(g_hDll, "MongateQueryUsed");
- MongateCsSendSms = (FnMongateCsSendSms)::GetProcAddress(g_hDll, "MongateCsSendSms");
- MongateCsGetStatusReport = (FnMongateCsGetStatusReport)::GetProcAddress(g_hDll, "MongateCsGetStatusReport");
- MongateConnectSocks4Proxy = (FnMongateConnectSocks4Proxy)::GetProcAddress(g_hDll, "MongateConnectSocks4Proxy");
- MongateConnectSocks5Proxy = (FnMongateConnectSocks5Proxy)::GetProcAddress(g_hDll, "MongateConnectSocks5Proxy");
- MongateConnectHttpProxy = (FnMongateConnectHttpProxy)::GetProcAddress(g_hDll, "MongateConnectHttpProxy");
- MongateTestMsgEx = (FnMongateTestMsgEx)::GetProcAddress(g_hDll, "MongateTestMsgEx");
- MongateTestMsgExHttp =(FnMongateTestMsgExHttp)::GetProcAddress(g_hDll, "MongateTestMsgExHttp");
- MongateQueryBalanceHttp = (FnMongateQueryBalance)::GetProcAddress(g_hDll, "MongateQueryBalanceHttp");
- MongateQueryUsedHttp = (FnMongateQueryUsed)::GetProcAddress(g_hDll, "MongateQueryUsedHttp");
- MongateConnectHttp = (FnMongateConnect)::GetProcAddress(g_hDll, "MongateConnectHttp");
- MongateCsSendSmsHttp = (FnMongateCsSendSms)::GetProcAddress(g_hDll, "MongateCsSendSmsHttp");
- MongateCsGetSmsHttp = (FnMongateCsGetSmsHttp)::GetProcAddress(g_hDll, "MongateCsGetSmsHttp");
- MongateCsGetStatusReportHttp = (FnMongateCsGetStatusReport)::GetProcAddress(g_hDll, "MongateCsGetStatusReportHttp");
- MongateChangePwdHttp = (FnMongateChangePwd)::GetProcAddress(g_hDll, "MongateChangePwdHttp");
- MongateTestConnHttp = (FnMongateTestConnHttp)::GetProcAddress(g_hDll, "MongateTestConnHttp");
- MongateConnectHttpProxy = (FnMongateConnectHttpProxy)::GetProcAddress(g_hDll, "MongateConnectHttpProxy");
- MongateCsSPSendSmsNew = (FnMongateCsSPSendSmsNew)::GetProcAddress(g_hDll, "MongateCsSPSendSmsNew");
- //ASSERT(MongateCsSendSms != NULL);
- }
- BOOL CVcDemoDlg::OnInitDialog()
- {
- CDialog::OnInitDialog();
-
- // Set the icon for this dialog. The framework does this automatically
- // when the application's main window is not a dialog
- SetIcon(m_hIcon, TRUE); // Set big icon
- SetIcon(m_hIcon, FALSE); // Set small icon
-
- // TODO: Add extra initialization here
- LoadMWGateway();
- //m_ServerIp="server1.montnets.com";
- //m_ServerIp="61.145.229.26";
- // m_ServerIp="61.242.89.115";
- m_ServerIp="server1.montnets.com";
- m_strLoginID = "090802";
- m_strRecvMobi="15858427733";
- m_mobicount=1;
- m_strLoginPwd = "516842";
- m_strSendSms = "梦网网关测试信息,恭喜发财!!";
- m_Tcp = TRUE;
- UpdateData(FALSE);
- OnUpdateEnables();
- GetDlgItem(IDC_EDIT_PROXYIP)->EnableWindow(FALSE);
- GetDlgItem(IDC_EDIT_PROXYPORT)->EnableWindow(FALSE);
- GetDlgItem(IDC_EDIT_PROXYID)->EnableWindow(FALSE);
- GetDlgItem(IDC_EDIT_PROXYPWD)->EnableWindow(FALSE);
- CComboBox * list=(CComboBox*)GetDlgItem(IDC_COMBOPROXY);
- list->AddString("Proxy4");
- list->AddString("Proxy5");
- list->AddString("HttpProxy");
- return TRUE; // return TRUE unless you set the focus to a control
- }
- // If you add a minimize button to your dialog, you will need the code below
- // to draw the icon. For MFC applications using the document/view model,
- // this is automatically done for you by the framework.
- void CVcDemoDlg::OnPaint()
- {
- if (IsIconic())
- {
- CPaintDC dc(this); // device context for painting
-
- SendMessage(WM_ICONERASEBKGND, (WPARAM) dc.GetSafeHdc(), 0);
-
- // Center icon in client rectangle
- int cxIcon = GetSystemMetrics(SM_CXICON);
- int cyIcon = GetSystemMetrics(SM_CYICON);
- CRect rect;
- GetClientRect(&rect);
- int x = (rect.Width() - cxIcon + 1) / 2;
- int y = (rect.Height() - cyIcon + 1) / 2;
-
- // Draw the icon
- dc.DrawIcon(x, y, m_hIcon);
- }
- else
- {
- CDialog::OnPaint();
- }
- }
- // The system calls this to obtain the cursor to display while the user drags
- // the minimized window.
- HCURSOR CVcDemoDlg::OnQueryDragIcon()
- {
- return (HCURSOR) m_hIcon;
- }
- //---------------------------------------------------------------------------
- void CVcDemoDlg::OnBtnConnect()
- {
- UpdateData(TRUE);
- CString mystr,proxyip,port,id,pwd;
- int pport;
- if (m_hsock == 0)
- {
- if(m_bProxy)
- {
- GetDlgItem(IDC_EDIT_PROXYIP)->GetWindowText(proxyip);
- GetDlgItem(IDC_EDIT_PROXYPORT)->GetWindowText(port);
- GetDlgItem(IDC_EDIT_PROXYID)->GetWindowText(id);
- GetDlgItem(IDC_EDIT_PROXYPWD)->GetWindowText(pwd);
- CComboBox* list = (CComboBox*)GetDlgItem(IDC_COMBOPROXY);
- pport = atoi(port);
- int i = list->GetCurSel();
- switch(i)
- {
- case -1:
- AfxMessageBox("请选择代理类型!");
- break;
- case 0:
- m_hsock = MongateConnectSocks4Proxy(proxyip,pport,m_ServerIp, m_Port, m_strLoginID,m_strLoginPwd);
- break;
- case 1:
- m_hsock = MongateConnectSocks5Proxy(proxyip,pport,id,pwd,m_ServerIp, m_Port, m_strLoginID,m_strLoginPwd);
- break;
- case 2:
- m_hsock = MongateConnectHttpProxy(proxyip,pport,id,pwd,m_ServerIp, m_Port, m_strLoginID,m_strLoginPwd);
- break;
- }
- }
- else
- if(m_Tcp)
- m_hsock = MongateConnect(m_ServerIp, m_Port, m_strLoginID,m_strLoginPwd);
- else
- m_hsock = MongateConnectHttp(m_ServerIp, m_Port, m_strLoginID,m_strLoginPwd);
-
-
- if (m_hsock > 0)
- {
- mystr.Format("连接成功,返回句柄:%d",m_hsock);
- GetDlgItem(IDC_BTN_CONNECT)->EnableWindow(FALSE);
- GetDlgItem(IDC_BTN_DISCONN)->EnableWindow(TRUE);
- //m_btnConn.SetWindowText("断 开");
- }
- else
- {
- mystr.Format("连接失败,返回:%d",m_hsock);
- GetDlgItem(IDC_BTN_CONNECT)->EnableWindow(TRUE);
- GetDlgItem(IDC_BTN_DISCONN)->EnableWindow(FALSE);
- m_hsock = 0;
- }
- }
- m_listCtrl.InsertString(0,mystr);
- UpdateData(FALSE);
- }
- //---------------------------------------------------------------------------
- void CVcDemoDlg::OnUpdateEnables()
- {
- UpdateData(TRUE);
- BOOL bBoth=m_chkboth||m_kfboth;
- if ((m_chksingle)&&(myflag==1)){
- m_chkboth=FALSE;
- m_kfboth=FALSE;
- }
- if ((m_chkboth)&&(myflag==2)){
- m_chksingle=FALSE;
- m_kfboth=FALSE;
- }
-
- if ((m_kfboth)&&(myflag==3)){
- m_chkboth=FALSE;
- m_chksingle=FALSE;
- }
-
- if (m_chkboth) m_btnSend.SetWindowText("增值信息");
- else if (m_kfboth) m_btnSend.SetWindowText("客服信息");
- else m_btnSend.SetWindowText("单向信息");
- //GetDlgItem(IDC_EDT_SERVICE_NO)->EnableWindow(m_chkboth);
- //GetDlgItem(IDC_EDT_FEE_CODE)->EnableWindow(m_chkboth);
- GetDlgItem(IDC_EDT_LINKID)->EnableWindow(m_chkboth);
- GetDlgItem(IDC_BTN_GET_STATUS)->EnableWindow(m_kfboth);
- GetDlgItem(IDC_EDT_NUM)->EnableWindow(bBoth);
- GetDlgItem(IDC_BTN_RECV)->EnableWindow(bBoth);
- GetDlgItem(IDC_EDT_SERVICE_NO)->EnableWindow(m_chkboth);
- GetDlgItem(IDC_EDT_FEE_CODE)->EnableWindow(m_chkboth);
- UpdateData(FALSE);
- }
- //---------------------------------------------------------------------------
- void CVcDemoDlg::OnBtnRecv()
- {
- if (m_hsock<=0) {
- m_listCtrl.InsertString(0,"没有连接到服务器");
- return;
- }
-
- int count =0;
-
- char msg[500][255];
- CString s,mystr;
-
- if(m_kfboth)
- {
- if(m_Tcp)
- count = MongateCsGetSms(m_hsock, msg);
- else
- count = MongateCsGetSmsHttp(m_hsock, msg);
- }
- else
- count =MongateVasGetSms(m_hsock, msg);
- s=m_chkboth?"增值端口":"客服端口";
- if (count == 0)
- {
- mystr.Format("%s%s",s,"没有信息可读");
- }
- else if (count > 0)
- {
- for (int i = 0; i < count; i++)
- {
- mystr.Format("%s%s%d:%s",s,"接收", i+1, msg[i]);
- m_listCtrl.InsertString(0,mystr);
- MessageBox(msg[i]);
- }
- return;
- }
- else
- {
- mystr.Format("%s%s%d",s,"接收信息失败,返回:",count);
- }
- m_listCtrl.InsertString(0,mystr);
- }
- //---------------------------------------------------------------------------
- void CVcDemoDlg::OnDestroy()
- {
- CDialog::OnDestroy();
-
- if (m_hsock != 0)
- MongateDisconnect(m_hsock);
- }
- //---------------------------------------------------------------------------
- void CVcDemoDlg::OnBtnSend()
- {
- UpdateData();
- CString mystr;
- if (m_hsock<=0) {
- m_listCtrl.InsertString(0,"没有连接到服务器");
- return;
- }
- int res=0;
- char strSN[255] = {0};
- if (m_chkboth)
- {//发送增值信息
- if(m_Tcp)
- res = MongateVasSendSms(m_hsock, m_strFeeCode, m_strServiceNo,
- "00********", m_strLinkID, m_strRecvMobi, m_strSendSms,1);
- else
- res = -1;
- if (res == 1)
- mystr.Format("发送增值信息成功");
- else
- mystr.Format("发送增值信息失败,返回:%d",res);
- }
- else if (m_kfboth)
- {//发送客服信息
- if(m_Tcp)
- {
- res = MongateTestMsgEx(m_hsock,m_strSendSms.GetBuffer(1200),strSN);
- }
- else
- {
- res = MongateTestMsgExHttp(m_hsock,m_strSendSms.GetBuffer(1200),strSN);
- }
- if (res == -10033)
- mystr.Format("检测关键字,返回:%s",strSN);
- res = MongateCsSPSendSmsNew(m_hsock,m_strRecvMobi.GetBuffer(2000),m_strSendSms.GetBuffer(1200),m_mobicount,"*",strSN);
- // if(m_Tcp)
- // {
- // res = MongateCsSendSms(m_hsock,m_strRecvMobi.GetBuffer(2000),m_strSendSms.GetBuffer(1200),m_mobicount,strSN);
- // }
- // else
- // {
- // res = MongateCsSendSmsHttp(m_hsock,m_strRecvMobi.GetBuffer(2000),m_strSendSms.GetBuffer(1200),m_mobicount,strSN);
- // }
- if (res == 1)
- mystr.Format("发送客服信息成功,信息编号:%s",strSN);
- else
- mystr.Format("发送客服信息失败,返回:%d",res);
- }
- else
- {//发送单向信息
- res = MongateSendSms(m_hsock,m_strRecvMobi,m_strSendSms);
- if (res == 1)
- mystr.Format("发送单向信息成功%s",strSN);
- else
- mystr.Format("发送单向信息失败,返回:%d",res);
- }
- m_listCtrl.InsertString(0,mystr);
-
- }
- //---------------------------------------------------------------------------
- void CVcDemoDlg::OnBtnQuery()
- {
- if (m_hsock<=0) {
- m_listCtrl.InsertString(0,"没有连接到服务器");
- return;
- }
- CString mystr;
- int m_iLeft;
- if(m_Tcp)
- m_iLeft = MongateQueryBalance(m_hsock);
- else
- m_iLeft = MongateQueryBalanceHttp(m_hsock);
- if (m_iLeft >= 0)
- mystr.Format("查询余额成功,剩余:%d",m_iLeft);
- else
- mystr.Format("查询余额失败,返回:%d",m_iLeft);
- m_listCtrl.InsertString(0,mystr);
- }
- //---------------------------------------------------------------------------
- void CVcDemoDlg::OnBTNQuery2()
- {
- //ASSERT(m_hsock);
- if (m_hsock<=0) {
- m_listCtrl.InsertString(0,"没有连接到服务器");
- return;
- }
- CString mystr;
- int m_iUsed;
- if(m_Tcp)
- m_iUsed= MongateQueryUsed(m_hsock);
- else
- m_iUsed = MongateQueryUsedHttp(m_hsock);
- if (m_iUsed > 0)
- mystr.Format("查询使用成功,已用:%d",m_iUsed);
- else
- mystr.Format("查询使用失败,返回:%d",m_iUsed);
- m_listCtrl.InsertString(0,mystr);
- }
- void CVcDemoDlg::OnBtnChangePwd()
- {
- if (m_hsock<=0) {
- m_listCtrl.InsertString(0,"没有连接到服务器");
- return;
- }
- UpdateData();
- CString mystr;
- int res;
- if(m_Tcp)
- res = MongateChangePwd(m_hsock, m_strLoginID, m_strLoginPwd, m_strNewPwd);
- else
- res = MongateChangePwdHttp(m_hsock, m_strLoginID, m_strLoginPwd, m_strNewPwd);
- if(res==1) mystr.Format("修改密码成功");
- else
- mystr.Format("修改密码失败,返回:%d",res);
- m_listCtrl.InsertString(0,mystr);
- }
- void CVcDemoDlg::OnBtnTestConn()
- {
- if (m_hsock<=0) {
- m_listCtrl.InsertString(0,"没有连接到服务器");
- return;
- }
- CString mystr;
- int res;
- if(m_Tcp)
- {
- res = MongateTestConn(m_hsock);
- }else
- res = MongateTestConnHttp(m_hsock);
- if(res==1) mystr.Format("测试连接成功");
- else mystr.Format("测试连接失败,返回:%d",res);
- m_listCtrl.InsertString(0,mystr);
- }
- void CVcDemoDlg::OnBtnGetStatus()
- {
- if (m_hsock<=0) {
- m_listCtrl.InsertString(0,"没有连接到服务器");
- return;
- }
- char strMsg[500][255] = {0};
- CString mystr;
- int count;
- if(m_Tcp)
- count= MongateCsGetStatusReport(m_hsock, strMsg);
- else
- count = MongateCsGetStatusReportHttp(m_hsock, strMsg);
- if (count == 0)
- {
- mystr="没有信息可读";
- }
- else if (count > 0)
- {
- for (int i=0; i < count; i++)
- {
- mystr.Format("%s%d:%s","状态报告", i+1, strMsg[i]);
- if(i!=count-1) m_listCtrl.InsertString(0,mystr);
- }
- }
- else
- {
- mystr.Format("%s%d","读取状态报告失败,返回:",count);
- }
- m_listCtrl.InsertString(0,mystr);
- }
- void CVcDemoDlg::OnChkBoth()
- {
- // TODO: Add your control notification handler code here
- myflag=2;
- OnUpdateEnables();
- }
- void CVcDemoDlg::OnChkSingle()
- {
- // TODO: Add your control notification handler code here
- myflag=1;
- m_btnSend.SetWindowText("单向信息");
- OnUpdateEnables();
- }
- void CVcDemoDlg::OnChkKfboth()
- {
- // TODO: Add your control notification handler code here
- myflag=3;
- OnUpdateEnables();
- }
- void CVcDemoDlg::OnBtnDisconn()
- {
- //UpdateData(TRUE);
- // TODO: Add your control notification handler code here
- if (m_hsock<=0) {
- m_listCtrl.InsertString(0,"没有连接到服务器");
- return;
- }
- CString mystr;
-
- // m_hsock = MongateConnect("server1.montnets.com", 8018, m_strLoginID,
- MongateDisconnect(m_hsock);
- mystr.Format("断开连接");
- GetDlgItem(IDC_BTN_CONNECT)->EnableWindow(TRUE);
- GetDlgItem(IDC_BTN_DISCONN)->EnableWindow(FALSE);
- m_hsock=0;
-
- m_listCtrl.InsertString(0,mystr);
- //UpdateData(FALSE);
- }
- void CVcDemoDlg::OnType()
- {
- // TODO: Add your control notification handler code here
- UpdateData(TRUE);
- //int iRet=MongateSetCmdType(m_Port);
- }
- void CVcDemoDlg::OnChkProxy()
- {
- // TODO: Add your control notification handler code here
- UpdateData(TRUE);
- if(m_bProxy)
- {
- GetDlgItem(IDC_EDIT_PROXYIP)->EnableWindow(TRUE);
- GetDlgItem(IDC_EDIT_PROXYPORT)->EnableWindow(TRUE);
- GetDlgItem(IDC_EDIT_PROXYID)->EnableWindow(TRUE);
- GetDlgItem(IDC_EDIT_PROXYPWD)->EnableWindow(TRUE);
- }
- else
- {
- GetDlgItem(IDC_EDIT_PROXYIP)->EnableWindow(FALSE);
- GetDlgItem(IDC_EDIT_PROXYPORT)->EnableWindow(FALSE);
- GetDlgItem(IDC_EDIT_PROXYID)->EnableWindow(FALSE);
- GetDlgItem(IDC_EDIT_PROXYPWD)->EnableWindow(FALSE);
- }
- }
- void CVcDemoDlg::OnCHECKtcp()
- {
- // TODO: Add your control notification handler code here
- UpdateData(TRUE);
- if(m_Tcp)
- GetDlgItem(IDC_CHECKtcp)->SetWindowText("TCP");
- else
- GetDlgItem(IDC_CHECKtcp)->SetWindowText("HTTP");
-
- }
|