服務器先進行
創(chuàng)新互聯(lián)秉承實現(xiàn)全網(wǎng)價值營銷的理念,以專業(yè)定制企業(yè)官網(wǎng),做網(wǎng)站、成都網(wǎng)站建設,成都小程序開發(fā),網(wǎng)頁設計制作,手機網(wǎng)站制作設計,營銷型網(wǎng)站幫助傳統(tǒng)企業(yè)實現(xiàn)“互聯(lián)網(wǎng)+”轉(zhuǎn)型升級專業(yè)定制企業(yè)官網(wǎng),公司注重人才、技術和管理,匯聚了一批優(yōu)秀的互聯(lián)網(wǎng)技術人才,對客戶都以感恩的心態(tài)奉獻自己的專業(yè)和所長。
Bind ()綁定服務器的端口
然后BeginReceive接受客戶端發(fā)送的數(shù)據(jù)
客戶端Bind ()綁定客戶端接受和發(fā)送數(shù)據(jù)的端口
SendTo()來發(fā)送數(shù)據(jù)就可以
不需要進行BeginConnect,因為UDP不需要連接
常見兩種方式:
使用短信網(wǎng)關,有第三方的,也有和移動電信等簽約的。后者一般是大客戶才開放。前者你百度搜“短信通”就可以找到很多家提供這種服務的公司。提供的接口一般是http協(xié)議的調(diào)用。在C# WINFORM里就可以使用WebClient類來調(diào)用了。具體的接口你還是得看不同公司提供的文檔。
使用短信貓。是一個硬件設備,可以插SIM卡,然后通過短信貓?zhí)峁┑腁PI去調(diào)用…具體還是得看那個API…我用過一個是提供一個dll給你import的。其他應該也一樣
Visual C#實現(xiàn)短信息發(fā)送的具體實現(xiàn)步驟:
Visual C#發(fā)送短信息的關鍵就是通過Web引用新浪網(wǎng)提供的發(fā)送短信息的Web Service,并在引用完成后。調(diào)用此Service的sendXml方法即可。以下就是Visual C#引用Web Service發(fā)送短信息的具體實現(xiàn)步驟:
1. 啟動Visual Studio .Net。
2. 選擇菜單【文件】|【新建】|【項目】后,彈出【新建項目】對話框。
3. 將【項目類型】設置為【Visual Basic項目】。
4. 將【模板】設置為【W(wǎng)indows應用程序】。
5. 在【名稱】文本框中輸入【短信】。
6. 在【位置】的文本框中輸入【E:/VS.NET項目】,然后單擊【確定】按鈕,這樣在"E:/VS.NET項目"目錄中就產(chǎn)生了名稱為"短信"的文件夾,并在里面創(chuàng)建了名稱為"短信"的項目文件。
7. 把Visual Studio .Net的當前窗口切換到【Form1.cs(設計)】窗口,并從【工具箱】中的【W(wǎng)indows窗體組件】選項卡中往Form1窗體中拖入下列組件,并執(zhí)行相應的操作:
四個Label組件。
四個TextBox組件。
一個Button組件,其作用是發(fā)送短信息。并在這個Button組件拖入Form1的設計窗體后,雙擊它,則系統(tǒng)會在Form1.cs文件分別產(chǎn)生這個組件的Click事件對應的處理代碼。
8. 把Visual Studio .Net的當前窗口切換到Form1.vb的代碼編輯窗口,并用下列代碼替換Form1.cs中的InitializeComponent過程對應的代碼,下列代碼作用是初始化窗體中加入的組件:
private void InitializeComponent ( )
{
this.textBox1 = new System.Windows.Forms.TextBox ( ) ;
this.textBox2 = new System.Windows.Forms.TextBox ( ) ;
this.textBox3 = new System.Windows.Forms.TextBox ( ) ;
this.button1 = new System.Windows.Forms.Button ( ) ;
this.label1 = new System.Windows.Forms.Label ( ) ;
this.label2 = new System.Windows.Forms.Label ( ) ;
this.label3 = new System.Windows.Forms.Label ( ) ;
this.label4 = new System.Windows.Forms.Label ( ) ;
this.textBox4 = new System.Windows.Forms.TextBox ( ) ;
this.SuspendLayout ( ) ;
this.textBox1.Location = new System.Drawing.Point ( 144 , 16 ) ;
this.textBox1.Name = "textBox1" ;
this.textBox1.Size = new System.Drawing.Size ( 184 , 21 ) ;
this.textBox1.TabIndex = 0 ;
this.textBox1.Text = "" ;
this.textBox2.Location = new System.Drawing.Point ( 144 , 69 ) ;
this.textBox2.Name = "textBox2" ;
this.textBox2.PasswordChar = ''''''''*'''''''' ;
this.textBox2.Size = new System.Drawing.Size ( 184 , 21 ) ;
this.textBox2.TabIndex = 1 ;
this.textBox2.Text = "" ;
this.textBox3.Location = new System.Drawing.Point ( 144 , 122 ) ;
this.textBox3.Name = "textBox3" ;
this.textBox3.Size = new System.Drawing.Size ( 184 , 21 ) ;
this.textBox3.TabIndex = 2 ;
this.textBox3.Text = "" ;
this.button1.Location = new System.Drawing.Point ( 152 , 256 ) ;
this.button1.Name = "button1" ;
this.button1.Size = new System.Drawing.Size ( 80 , 32 ) ;
this.button1.TabIndex = 4 ;
this.button1.Text = "發(fā)送" ;
this.button1.Click += new System.EventHandler ( this.button1_Click ) ;
this.label1.Location = new System.Drawing.Point ( 56 , 24 ) ;
this.label1.Name = "label1" ;
this.label1.Size = new System.Drawing.Size ( 88 , 16 ) ;
this.label1.TabIndex = 5 ;
this.label1.Text = "注冊手機號:" ;
this.label2.Location = new System.Drawing.Point ( 88 , 77 ) ;
this.label2.Name = "label2" ;
this.label2.Size = new System.Drawing.Size ( 72 , 16 ) ;
this.label2.TabIndex = 6 ;
this.label2.Text = "口令:" ;
this.label3.Location = new System.Drawing.Point ( 56 , 128 ) ;
this.label3.Name = "label3" ;
this.label3.Size = new System.Drawing.Size ( 96 , 16 ) ;
this.label3.TabIndex = 7 ;
this.label3.Text = "目標手機號:" ;
this.label4.Location = new System.Drawing.Point ( 96 , 176 ) ;
this.label4.Name = "label4" ;
this.label4.Size = new System.Drawing.Size ( 72 , 16 ) ;
this.label4.TabIndex = 8 ;
this.label4.Text = "內(nèi)容:" ;
this.textBox4.Location = new System.Drawing.Point ( 144 , 175 ) ;
this.textBox4.Multiline = true ;
this.textBox4.Name = "textBox4" ;
this.textBox4.Size = new System.Drawing.Size ( 184 , 48 ) ;
this.textBox4.TabIndex = 3 ;
this.textBox4.Text = "" ;
this.AutoScaleBaseSize = new System.Drawing.Size ( 6 , 14 ) ;
this.ClientSize = new System.Drawing.Size ( 410 , 303 ) ;
this.Controls.Add ( this.button1 ) ;
this.Controls.Add ( this.textBox4 ) ;
this.Controls.Add ( this.textBox3 ) ;
this.Controls.Add ( this.textBox2 ) ;
this.Controls.Add ( this.textBox1 ) ;
this.Controls.Add ( this.label4 ) ;
this.Controls.Add ( this.label3 ) ;
this.Controls.Add ( this.label2 ) ;
this.Controls.Add ( this.label1 ) ;
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle ;
this.MaximizeBox = false ;
this.Name = "Form1" ;
this.Text = "Visual C#實現(xiàn)短信發(fā)送" ;
this.ResumeLayout ( false ) ;
}
你不用程序的情況能不能用TAB切換焦點。如果這樣不行的話你用程序控件是沒用的。
或都直接對第二個編輯框發(fā)送消息。