📄 frmresvice.cs
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace SMS.Forms
{
public partial class frmResvice : Form
{
private static frmResvice resvice;//声明一个私有变量,用来保存唯一的窗体实例
public static string jcom; //建立公共变量获取COM端口
public static string btl; //建立公共变量获取波特率
public string power = "YIWU-IJDD-CDQW-JDWG"; //建立公共变量获取机器码
public frmResvice()
{
InitializeComponent();
}
//提供一个静态的方法,此方法是用来判断何时实例化窗体
public static frmResvice Instance()
{
if (resvice == null)
resvice = new frmResvice();
return resvice;
}
private void frmResvice_FormClosing(object sender, FormClosingEventArgs e)
{
resvice.Dispose(true);
resvice = null;
}
private void AddData(string num, string content) //自定义方法,用于将短信添加到数据库
{
OleDbConnection conn = BaseClass.ConnClass.DataConn();
conn.Open();
OleDbCommand cmd = new OleDbCommand("insert into tb_Resvice([smsnum],[smscontent]) values('" + num + "','" + content + "')", conn);
cmd.ExecuteNonQuery();
conn.Close();
}
private void DelData() //自定义清空数据库的方法
{
OleDbConnection conn = BaseClass.ConnClass.DataConn();
conn.Open();
OleDbCommand cmd = new OleDbCommand("delete from tb_Resvice", conn);
cmd.ExecuteNonQuery();
conn.Close();
}
private void GetData() //自定义方法用于获取数据库中的数据
{
OleDbConnection conn = BaseClass.ConnClass.DataConn();
OleDbDataAdapter sda = new OleDbDataAdapter("select * from tb_Resvice order by ID DESC", conn);
DataSet ds = new DataSet();
sda.Fill(ds);
dgvResvice.DataSource = ds.Tables[0];
conn.Close();
}
private void frmResvice_Load(object sender, EventArgs e)
{
jcom = BaseClass.GSM.GSMModemGetDevice();//获取COM端口
btl = BaseClass.GSM.GSMModemGetBaudrate();//获取波特率
if (BaseClass.GSM.GSMModemInitNew(jcom, btl, null, null, false, power) == false)
{
MessageBox.Show("设备连接失败!" + BaseClass.GSM.GSMModemGetErrorMsg(), "提示", MessageBoxButtons.OK);
return;
}
string smscontent = BaseClass.GSM.GSMModemSMSReadAll(1);
if (smscontent == null) //判断是否存在短信息
{
MessageBox.Show("暂时没有新信息!", "系统提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
return;
}
else
{
DelData();//清空数据库
string newstr = smscontent.Replace("||", "#");//替换特殊字符
string[] scontent = newstr.Split('#');//去除特殊字符
string smscon = "";
for (int i = 0; i < scontent.Length; i++)
{
smscon = scontent[i];
string[] a = smscon.Split('|');//获取电话号码
string b = "";
b = a[0].ToString();
if (b.Length < 11 && smscon != "")//判断电话号码是否是服务台号码
{
string smsstr = b;
string smscot = scontent[i].Substring(b.Length, scontent[i].Length - b.Length).Replace("|", "");
AddData(smsstr, smscot);//添加到数据库中
}
else
{
if (smscon != "")
{
if (scontent[i].Substring(0, 1) == "|") //判断短信格式是否正确
{
string smsstr = scontent[i].Substring(3, scontent[i].Length - 3).Substring(0, 11);
string smscot = scontent[i].Substring(14, scontent[i].Length - 14).Replace("|", "");
AddData(smsstr, smscot);//添加到数据库中
}
else
{
string smsstr = scontent[i].Substring(2, scontent[i].Length - 2).Substring(0, 11);
string smscot = scontent[i].Substring(13, scontent[i].Length - 13).Replace("|", "");
AddData(smsstr, smscot); //添加到数据库中
}
}
}
}
GetData();//绑定控件
}
}
private void dgvResvice_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
string id = dgvResvice.SelectedCells[0].Value.ToString();//获取选择短信的编号
string snum = dgvResvice.SelectedCells[1].Value.ToString();//获取短信的发送号码
string stxt = dgvResvice.SelectedCells[2].Value.ToString();//获取短信的内容
frmSmsXX smsxx = new frmSmsXX();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -