简体   繁体   English

使用VB.NET发送SMS

[英]Sending SMS using VB.NET

Dim message As New MailMessage()
message.To.Add("9999999999@ideacellular.net")
message.From = New MailAddress("xyz@gmail.com")
message.Subject = "Hi"
message.Body = "SMS"
Dim smtp As New SmtpClient("smtp.gmail.com")
smtp.EnableSsl = True
smtp.Credentials = New System.Net.NetworkCredential("xyz@gmail.com", "password")
smtp.Send(message)

I have written the above code in order to send SMS from my vb.net application to a Mobile phone. 我已经编写了上面的代码,以便从我的vb.net应用程序向手机发送短信。

When i execute this code i am not getting any errors, at the same time i am not receiving any SMS. 当我执行此代码时,我没有收到任何错误,同时我没有收到任何短信。

What could be the problem ? 可能是什么问题呢 ?

I have a perfect way to send SMS in visual basic. 我有一个完美的方式来发送基本的Visual Basic。

Using AT-commands. 使用AT命令。

AT-commands:are instructed through which you can send and receive SMS messages, and this is an example: AT命令:指示您可以通过它发送和接收SMS消息,这是一个示例:

To Send a message 发送消息

First: 第一:

Write this code in the top 将此代码写在顶部

Imports System.IO.Ports
Imports System.IO

Secondly: 其次:

Write this code in the public class of form: 将此代码写在表单的公共类中:

Dim SerialPort As New System.IO.Ports.SerialPort()
Dim CR As String

Thirdly: 第三:

Create a textBox(TextmsgTextBox) to write the text message, and TextBox2(MobileNumberTextBox) to enter the mobile number, and Button(SendBUT) to Send message. 创建一个textBox(TextmsgTextBox)来写短信,而TextBox2(MobileNumberTextBox)则输入手机号,而Button(SendBUT)则发送短信。

And write this code in the button click event. 并在按钮单击事件中编写此代码。

If SerialPort.IsOpen Then
    SerialPort.Close()
End If
SerialPort.PortName = COM4
SerialPort.BaudRate = 9600
SerialPort.Parity = Parity.None
SerialPort.StopBits = StopBits.One
SerialPort.DataBits = 8
SerialPort.Handshake = Handshake.RequestToSend
SerialPort.DtrEnable = True
SerialPort.RtsEnable = True
SerialPort.NewLine = vbCrLf

Dim message As String
message = MsgRichTextBox.Text

Try
    SerialPort.Open()
Catch ex As Exception
    MsgBox("The modem with the port '" & SerialPort.PortName & "'is not plugged in!!" & vbcrlf & "Please plug the modem and try again.")
End Try

If SerialPort.IsOpen() Then
    SerialPort.Write("AT" & vbCrLf)
    SerialPort.Write("AT+CMGF=1" & vbCrLf)
    SerialPort.Write("AT+CMGS=" & Chr(34) & phoneNumBox.Text & Chr(34) & vbCrLf)
    SerialPort.Write(message & Chr(26))
    SentPicture.Visible = True
    SentLabel.Visible = True
    SentTimer.Start()
Else
    MsgBox("Port '" & SerialPort.PortName & "' is not available!")
End If

Simple Send SMS using VB.NET + AT Command : 使用VB.NET + AT命令简单发送短信:

Try
            With SerialPort1
                .Write("at+cmgf=1" & vbCrLf)
                Threading.Thread.Sleep(1000)
                .Write("at+cmgs=" & Chr(34) & TextBox1.Text & Chr(34) & vbCrLf)
                .Write(TextBox2.Text & Chr(26))
                Threading.Thread.Sleep(1000)
            End With
        Catch ex As Exception

        End Try

Port name change from time to another and from computer to another. 端口名称随时间变化,从计算机变为另一个。

I will show you the way by pictures. 我会用图片向你展示。

1:Enter to Device Manager from Control Panel. 1:从“控制面板”进入“设备管理器”。

在此输入图像描述

2:Right click on the device, and choose Properties. 2:右键单击设备,然后选择“属性”。 在此输入图像描述

3:Choose Modem tap, and look for port name, and use it in your application. 3:选择调制解调器点击,查找端口名称,并在您的应用程序中使用它。 在此输入图像描述

 Dim dt As New DataTable
        CreateDataTable(dt, "select * from Table where Id = 1")
        If (dt.Rows.Count > 0) Then
            Dim request As HttpWebRequest
            Dim response As HttpWebResponse = Nothing
            Dim url As String
            Dim senderid As String = dt.Rows(0).Item("SenderId").ToString()
            Dim password As String = dt.Rows(0).Item("Password").ToString()
            Dim host As String
            Dim originator As String = dt.Rows(0).Item("UserName").ToString()
            Try
                host = "http://smsidea.co.in/sendsms.aspx?"
                'originator = "3423434343"
                'password = "234hj"
                url = host + "mobile=" & HttpUtility.UrlEncode(originator) _
                         & "&pass=" + HttpUtility.UrlEncode(password) _
                         & "&senderid=" + HttpUtility.UrlEncode(senderid) _
                         & "&to=" + HttpUtility.UrlEncode(StrToNumber) _
                         & "&msg=" + HttpUtility.UrlEncode(StrBody)
                request = DirectCast(WebRequest.Create(url), HttpWebRequest)
                response = DirectCast(request.GetResponse(), HttpWebResponse)
                'MessageBox.Show("Response: " & response.StatusDescription)
            Catch ex As Exception
            End Try
        End If

Vb.net code for send sms. 发送短信的Vb.net代码。

Try 尝试

        Dim url As String

        'paste your sms api code to url

        'url = "http://xxxxxxxxxx.com/SMS_API/sendsms.php?username=XXXX&password=XXXXX&mobile=" + mobile + "&sendername=XXXX&message=XXXXX&routetype=1"


        url="Paste your api code"



        Dim myReq As HttpWebRequest = DirectCast(WebRequest.Create(url), HttpWebRequest)
        Dim myResp As HttpWebResponse = DirectCast(myReq.GetResponse(), HttpWebResponse)
        Dim respStreamReader As New System.IO.StreamReader(myResp.GetResponseStream())
        Dim responseString As String = respStreamReader.ReadToEnd()
        respStreamReader.Close()
        myResp.Close()
        MsgBox("ok")

    Catch ex As Exception
        MsgBox(ex.Message)
    End Try

http://yii2ideas.blogspot.in/2017/11/how-to-send-sms-from-vb-net-application.html http://yii2ideas.blogspot.in/2017/11/how-to-send-sms-from-vb-net-application.html

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM