| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308 |
- using System;
- using System.Collections;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Text;
- using System.Web;
- using System.Web.SessionState;
- using System.Web.UI;
- using System.Web.UI.WebControls;
- using System.Web.UI.HtmlControls;
- using System.Runtime.InteropServices;
- namespace CSDemo
- {
- /// <summary>
- /// WebForm3 的摘要说明。
- /// </summary>
- public partial class csharpDemo : System.Web.UI.Page
- {
- protected System.Web.UI.WebControls.Button Button1;
- [DllImport("MWGateway.dll")]//帐户登陆
- private static extern int MongateConnect(string ip ,int port,string account ,string pwd );
- [DllImport("MWGateway.dll")]//发送单向信息
- private static extern int MongateSendSms(int clientsock,string mobi,string note);
- [DllImport("MWGateway.dll")]//测试连接
- private static extern int MongateTestConn(int clientsock);
- [DllImport("MWGateway.dll")]//查询余额
- private static extern int MongateQueryBalance(int clientsocket);
- [DllImport("MWGateway.dll")]//查询使用
- private static extern int MongateQueryUsed(int clientsocket);
- [DllImport("MWGateway.dll")]//帐户充值
- private static extern int MongateRecharge(int clientsocket,string cardno,string cardpwd);
- [DllImport("MWGateway.dll")]//密码修改
- private static extern int MongateChangePwd(int clientsocket,string account,string oldpwd,
- string newpwd);
- [DllImport("MWGateway.dll")]//断开连接
- private static extern int MongateDisconnect(int clientsock);
- [DllImport("MWGateway.dll")]//接收增值信息
- private static extern int MongateVasGetSms(int clientsock, ref byte recvbuf );
- [DllImport("MWGateway.dll")]//发送增值双向信息
- private static extern int MongateVasSendSms(int clientsock,string feecode,string spno,
- string opercode,string linkid,string mobis,string msg,int icount);
- [DllImport("MWGateway.dll")]//接收客服信息
- private static extern int MongateCsGetSms(int clientsock, ref byte recvbuf );
- [DllImport("MWGateway.dll")]//发送客服双向信息
- private static extern int MongateCsSendSms(int clientsock,string mobi,string note,int icount,
- StringBuilder msgno);
- [DllImport("MWGateway.dll")]//读取状态报告
- private static extern int MongateCsGetStatusReport(int clientsock, ref byte recvbuf );
- #region Web 窗体设计器生成的代码
- override protected void OnInit(EventArgs e)
- {
- //
- // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
- //
- InitializeComponent();
- base.OnInit(e);
- }
-
- /// <summary>
- /// 设计器支持所需的方法 - 不要使用代码编辑器修改
- /// 此方法的内容。
- /// </summary>
- private void InitializeComponent()
- {
- }
- #endregion
- protected void BtnSend_Click(object sender, System.EventArgs e)
- {
- //发送信息
- if (Noconn()) return;
- int myrec,clientsock=Convert.ToInt16(Session["clientsock"]);
- if(CkVas.Checked ){
- myrec=MongateVasSendSms(clientsock,TxtFee.Text.Trim(),TxtSport.Text.Trim(),"00********",
- TxtLinkid.Text.Trim(),TxtPhone.Text.Trim(),TxtMsg.Text.Trim(),1);
- if(myrec==1) TxtInfo.Text="发送增值信息成功\r\n"+TxtInfo.Text;
- else TxtInfo.Text="发送增值信息失败\r\n"+TxtInfo.Text;
- }else if(CkKf.Checked ){
- StringBuilder strBld=new StringBuilder(40);
- myrec=MongateCsSendSms(clientsock,TxtPhone.Text.Trim(),TxtMsg.Text.Trim(),1,strBld);
- if(myrec==1) TxtInfo.Text="发送增值信息成功\r\n"+TxtInfo.Text;
- else TxtInfo.Text="发送增值信息失败\r\n"+TxtInfo.Text;
- TxtInfo.Text="信息编号:"+Convert.ToString(strBld)+"\r\n"+TxtInfo.Text;
- }else{
- myrec=MongateSendSms(clientsock,TxtPhone.Text.Trim(),TxtMsg.Text.Trim());
- if(myrec==1) TxtInfo.Text="发送单向信息成功\r\n"+TxtInfo.Text;
- else TxtInfo.Text="发送单向信息失败\r\n"+TxtInfo.Text;
- }
- }
- private void BtnState_Click(object sender, System.EventArgs e)
- {
- //读取状态报告
- if (Noconn()) return;
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- byte[,] recv=new byte[500,255] ;
- byte[] buf=new byte[255];
- string Str;
- int num,i,k;
- if (clientsock > 0)
- {
- num = MongateCsGetStatusReport(clientsock, ref recv[0, 0]);
- if (num > 0)
- {
- for( i = 0;i<num;i++)
- {
- for( k = 0;k<254;k++)
- {
- buf[k] = recv[i, k];
- if (buf[k] == 0)break;
- }
- Str = System.Text.Encoding.GetEncoding("gb2312").GetString(buf).ToString();
- TxtInfo.Text ="状态报告:"+Str+"\r\n"+TxtInfo.Text;
- }
- }
- else TxtInfo.Text ="无状态报告\r\n"+TxtInfo.Text;
- }
- else TxtInfo.Text="网络连接已经断开,请重新登陆\r\n"+TxtInfo.Text;
- }
- protected void BtnRecv_Click(object sender, System.EventArgs e) {
- //接收用户信息
- if (Noconn()) return;
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- byte[,] recv=new byte[500,255] ;
- byte[] buf=new byte[255];
- string Str;
- int num,i,k;
- if (CkKf.Checked)
- num = MongateCsGetSms(clientsock, ref recv[0, 0]);
- else
- num = MongateVasGetSms(clientsock, ref recv[0, 0]);
- if (num > 0) {
- for( i = 0;i<num;i++) {
- for( k = 0;k<254;k++) {
- buf[k] = recv[i, k];
- if (buf[k] == 0)break;
- }
- Str = System.Text.Encoding.GetEncoding("gb2312").GetString(buf).ToString();
- TxtInfo.Text="用户信息:"+Str+"\r\n"+TxtInfo.Text;
- }
- }
- else TxtInfo.Text="无用户信息\r\n"+TxtInfo.Text;
- }
- protected void BtnLogin_Click(object sender, System.EventArgs e)
- {
- //int clientsock=MongateConnect("61.242.89.115",8018,"13888888888","807778");
- int clientsock=MongateConnect(TxtIp.Text.Trim(),Convert.ToInt16(TxtPort.Text.Trim()),
- TxtAccount.Text.Trim(),TxtPwd.Text.Trim());
- Session["clientsock"]=clientsock;
- if (clientsock > 0){
- TxtInfo.Text ="登陆成功 句柄:"+Convert.ToString(clientsock)+"\r\n"+TxtInfo.Text;
- BtnDisConn.Enabled=true;
- BtnLogin.Enabled=false;
- }
- else TxtInfo.Text="登陆失败 返回:"+Convert.ToString(clientsock)+"\r\n"+TxtInfo.Text;
- }
- private void BtnFee_Click(object sender, System.EventArgs e)
- {
- //查费
- if (Noconn()) return;
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- int myfee=-10;
- if (clientsock>0)
- {
- myfee=MongateQueryBalance(clientsock);
- if (myfee>0)
- TxtInfo.Text="查询短信余额成功:"+Convert.ToString(myfee)+"\r\n"+TxtInfo.Text;
- else
- TxtInfo.Text="查询短信余额失败:返回"+Convert.ToString(myfee)+"\r\n"+TxtInfo.Text;
- }
- else TxtInfo.Text="网络连接已经断开,请重新登陆\r\n"+TxtInfo.Text;
- }
- protected void Page_Load(object sender, System.EventArgs e)
- {
- CkClick(0);
- }
- protected void BtnUsed_Click(object sender, System.EventArgs e) {
- //查询使用
- if (Noconn()) return;
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- int myfee=-10;
- if (clientsock>0) {
- myfee=MongateQueryUsed(clientsock);
- if (myfee>0)
- TxtInfo.Text="查询使用成功:"+Convert.ToString(myfee)+"\r\n"+TxtInfo.Text;
- else
- TxtInfo.Text="查询使用失败:返回"+Convert.ToString(myfee)+"\r\n"+TxtInfo.Text;
- }
- else TxtInfo.Text="网络连接已经断开,请重新登陆\r\n"+TxtInfo.Text;
- }
- private bool Noconn(){
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- if (clientsock <= 0){
- TxtInfo.Text ="没有连接到任何服务器!!!\r\n"+TxtInfo.Text ;
- return true;
- }
- else
- return false;
- }
- protected void BtnDisConn_Click(object sender, System.EventArgs e) {
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- MongateDisconnect(clientsock);
- BtnDisConn.Enabled=false;
- BtnLogin.Enabled=true;
- Session["clientsock"]=0;
- TxtInfo.Text ="断开连接,句柄:"+Convert.ToString(clientsock)+"\r\n"+TxtInfo.Text ;
- }
- protected void BtnTest_Click(object sender, System.EventArgs e) {
- if (Noconn()) return;
- int retu_state;
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- if (clientsock > 0){
- retu_state = MongateTestConn(clientsock);
- if (retu_state ==1) TxtInfo.Text ="测试连接成功\r\n"+TxtInfo.Text;
- else{
- TxtInfo.Text ="测试连接成功\r\n"+TxtInfo.Text ;
- clientsock = 0;
- BtnLogin.Enabled = true;
- BtnDisConn.Enabled = false;
- }
- }
- }
- protected void CkKf_CheckedChanged(object sender, System.EventArgs e) {
- CkClick(2);
- }
- private void CkClick(int seltype){
- if (seltype== 0){
- if (CkSingle.Checked){
- CkVas.Checked = false;
- CkKf.Checked = false;
- }
- }
- else if (seltype ==1){
- if (CkVas.Checked){
- CkSingle.Checked = false;
- CkKf.Checked = false;
- }
- }
- else{
- if (CkKf.Checked){
- CkVas.Checked = false;
- CkSingle.Checked = false;
- }
- }
- Showme(TxtSport,CkVas.Checked);
- Showme(TxtFee,CkVas.Checked);
- Showme(TxtLinkid,CkVas.Checked);
- Showme(TxtCount,CkVas.Checked);
- BtnRecv.Enabled=(CkVas.Checked)||(CkKf.Checked);
- BtnState.Enabled=CkKf.Checked;
- if(CkVas.Checked ) BtnSend.Text="增值信息";
- else if (CkKf.Checked ) BtnSend.Text="客服信息";
- else BtnSend.Text="单向信息";
- }
- private void Showme( TextBox edtmp,bool flag){
- edtmp.Enabled=flag;
- if (flag) edtmp.BackColor =SystemColors.Window;
- else edtmp.BackColor =SystemColors.ScrollBar;
- }
- protected void CkSingle_CheckedChanged(object sender, System.EventArgs e) {
- CkClick(0);
- }
- protected void CkVas_CheckedChanged(object sender, System.EventArgs e) {
- CkClick(1);
- }
- protected void BtnLeft_Click(object sender, System.EventArgs e) {
- //查询余额
- if(Noconn()) return;
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- int myfee;
- myfee=MongateQueryBalance(clientsock);
- if(myfee>=0) TxtInfo.Text ="查询余额成功,"+Convert.ToString(myfee)+"\r\n"+TxtInfo.Text ;
- else TxtInfo.Text ="查询余额失败,"+Convert.ToString(myfee)+"\r\n"+TxtInfo.Text ;
- }
- protected void BtnChangePwd_Click(object sender, System.EventArgs e) {
- //修改密码
- if(Noconn()) return;
- int clientsock=Convert.ToInt16(Session["clientsock"]);
- int myfee;
- myfee=MongateChangePwd(clientsock,TxtAccount.Text.Trim(),TxtPwd.Text.Trim(),
- TxtNewPwd.Text.Trim());
- if(myfee==1) TxtInfo.Text ="修改密码成功,"+Convert.ToString(myfee)+"\r\n"+TxtInfo.Text ;
- else TxtInfo.Text ="修改密码失败,"+Convert.ToString(myfee)+"\r\n"+TxtInfo.Text ;
- }
-
- }
- }
|