PDA

View Full Version : ارسال پيامك



shima*
شنبه 23 خرداد 1394, 10:47 صبح
سلام دوستان

من دارم به كمك جي اس مودم پيامك مي فرستم.البته ليست گيرنده هاي پيام را از بانك ميخونم. ايراد كارم اينكه تنها براي اخرين ركوردم پيامك ميره.بنظرتون ايراد از كجاس.
خوندن از بانك بدرستي انجام ميشه و من تك تك شماره هامو چاپ ميكنم.
ممنونم

محمد رضا فاتحی
شنبه 23 خرداد 1394, 11:27 صبح
پیامک رو چطور میفرستید؟منظورم اینه که وقتی شماره هاتون استخراج میشن از بانک بعدش چکار می کنید؟

shima*
شنبه 23 خرداد 1394, 11:34 صبح
شماره ها را از بانك استخراج ميكنم.بعد پيامك ميفرستيم.

محمد رضا فاتحی
شنبه 23 خرداد 1394, 11:45 صبح
اینو که فرموده بودید...
میتونید تکه کد ارسالتون رو بزارید؟البته اگه مقدوره

shima*
شنبه 23 خرداد 1394, 11:59 صبح
try
{
string connectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=C:\\ping\\ba nk.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
SqlConnection connection = new SqlConnection(connectionString);
connection.Open();


SqlCommand command = new SqlCommand("select * from tel", connection);
SqlDataReader dr = command.ExecuteReader();
while (dr.Read())
{
name = dr["name"].ToString().Trim();
tel = dr["tel"].ToString().Trim();
semat = dr["semat"].ToString().Trim();




long zero = long.Parse(tel);
SMS sms = new SMS();
string mes;
sms.Direction = SMSDirection.Submited;
sms.PhoneNumber = zero.ToString();
sms.ValidityPeriod = new TimeSpan(4, 0, 0, 0);
sms.Message = ("salam");


mes = sms.Compose(SMS.SMSEncoding.UCS2);




SerialPort1.Write("AT+CMGF=0" + Environment.NewLine);
Thread.Sleep(1000);


SerialPort1.Write("AT+CSCS=\"UCS2\"" + Environment.NewLine);//UCS2 HEX
Thread.Sleep(300);
int len = (mes.Length / 2) - 1;
SerialPort1.Write("AT+CMGS=" + len.ToString() + Environment.NewLine);
Thread.Sleep(300);
SerialPort1.Write(mes + char.ConvertFromUtf32(26) + "\r");
Thread.Sleep(1000);

}
}
catch
{


}