Pocket Outlook對象使用:訪問短消息服務

使用POOM中的SmsAccount類可以方便地完成短信息的發送。SmsAccount類提供了一個名爲Send的方法,這個方法的原型如下面的代碼所示,它接收唯一的一個參數message

public void Send(SmsMessage message);

       message參數的類型是SmsMessage,表示一條SMS消息,當調用了Send方法後,該消息將被髮送。因此,在發送短消息之前,還需要構造SmsMessage的對象。

       SmsMessage類提供了三個實例構造器,其中最有用的一個就要算下面提到的這個了。使用該構造器可以構造一個完全可以直接發送的SMS消息對象。

public SmsMessage(

    string recipientPhoneNumber,

    string message

);

       其中recipientPhoneNumer參數爲字符串形式的收信方電話號碼,message參數就是用戶需要發送的消息主體了。

       下面的例子演示瞭如何使用SmsAccount對象來完成發送短信息的任務。

       首先創建一個基於Windows Mobile 5.0 Pocket PCDevices項目,然後爲項目添加對Microsoft.WindowsMobile.PocketOutlook.dll程序集的引用,併爲窗體添加一個OutlookSession類型的私有域(名爲m_outlookSession),同時分別在窗體的構造器和Dispose方法中對其進行創建和釋放。

       構造如1所示的用戶界面。其中上面的“Receiver Number”文本框名爲m_txtReceiver,用於輸入接收方的手機號碼。下面的“Message”文本框名爲m_txtMesage,用於輸入要發送的消息內容,其Multiline屬性爲true,用於輸入多行文字。最下面的按鈕名爲m_btnSend,用來發送填寫好的短信息。

 1 SMS消息發送程序界面
 。


       Send按鈕的Click事件添加如下所示的事件處理方法,完成短信息的發送。

private void m_btnSend_Click(object sender, EventArgs e)

{

    try

    {

       // 構造短信息對象

       SmsMessage msg = new SmsMessage(

           m_txtReceiver.Text,

           m_txtMesage.Text);

 

       // 使用OutlookSession中的SMS帳戶進行發送

       m_outlookSession.SmsAccount.Send(msg);

 

       // 向用戶提示發送成功的信息

       MessageBox.Show(

           "Your message has been sent.",

           "Send",

           MessageBoxButtons.OK,

           MessageBoxIcon.Asterisk,

           MessageBoxDefaultButton.Button1);

 

       // 清空兩個文本框,以備填寫下一條消息

       m_txtReceiver.Text = String.Empty;

       m_txtMesage.Text = String.Empty;

    }

    catch (Exception ex)

    {

       MessageBox.Show(

           String.Format("Error: {0}", ex.Message),

           "Send",

           MessageBoxButtons.OK,

           MessageBoxIcon.Hand,

           MessageBoxDefaultButton.Button1);

    }

}

       因爲SMS消息的發送過程可能會出現異常(如接收方號碼填寫不正確等),因此整個過程被放入了一個try-catch語句塊中。

       在這裏首先使用前面提到過的SmsMessage類的構造器,構造一個具有指定接收方電話號碼和指定內容的SMS消息對象,然後通過調用SmsAccount類的Send方法完成發送。

       這裏的SmsAccount對象來自於OutlookSession對象,當然SmsMessage類自身也提供了一個Send方法,因此還可以避開使用OutlookSession對象,但效果是同樣的。

       運行這個程序,並填寫對方號碼和一些文字。單擊“Send”按鈕後,當出現表示發送成功的對話框後,稍待片刻接收方的手機便會收到這裏發送的消息。

       如果在這裏實現對m_txtMessage文本框中的文字進行處理,還可以提供更多功能,例如爲消息體添加簽名等

 

來自:http://www.winbile.net/BBS/1001389/ShowPost.aspx

發佈了25 篇原創文章 · 獲贊 5 · 訪問量 3萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章