Windows Mobile操作———— 撥號、發送訊息、新增連絡人...、任務、約會等

來源:互聯網
上載者:User

 

1、撥打到電話

如果要在.NET程式中撥打到電話的話,就需要通過P/Invoke來調用API。

到了Windows Mobile 5以上的版本中,Microsoft.WindowsMobile.Telephony類庫為我們提供了撥打到電話的功能。

在使用這個功能之前,我們必須添加Microsoft.WindowsMobile.Telephony引用。調用電話功能的代碼如下:

Phone phone = new Phone();
phone.Talk("撥打的電話號碼");

Phone類的方法只有一個Talk方法,所以也只能簡單的進行電話撥打。我們如果想實現一些複雜的功能,比如監視撥入的電話等,還需要去調用TAPI來實現。

2、發送訊息

傳送簡訊息和寄送電子郵件都需要Microsoft.WindowsMobile.PocketOutlook類庫的支援。

PocketOutlook是一個很複雜的命名空間,包括對很多系統功能的支援,而支援發簡訊的類是SmsMessage。

public void SmsMessageSend()
{
    SmsMessage smsMessage = new SmsMessage();

    smsMessage.Body = "發送內容";
    smsMessage.To.Add(new Recipient("連絡人姓名", "連絡人電話"));
    smsMessage.RequestDeliveryReport = true;

    smsMessage.Send();//發送

    return;
}

SmsMessage的Body屬性是SMS簡訊的內容,而To屬性,則是收件者的姓名和電話號碼,

因為支援多個收件者,所以在添加收件者的時候需要調用To屬性的Add方法。RequestDeliveryReport屬性是一個Bool值,設定是否要求得到發送報告。

最後調用SmsMessage的Send方法。

3、發送Email

發送Email的代碼與傳送簡訊息的代碼大致相似,但是需要使用的是EmailMessage類。

public void EmailSend()
{
    EmailMessage message = new EmailMessage();
    message.Subject = "標題";
    message.BodyText = "郵件內容";

    Recipient client = new Recipient("姓名","Email地址");
    message.To.Add(client);

    Attachment image = new Attachment("添加的附件");
    message.Attachments.Add(image);

    message.Send("ActiveSync");
}

EmailMessage的Subject屬性是電子郵件的標題,BodyText屬性是郵件內文。To屬性中可以添加收件者的名稱和地址。我們還可以在Attachments屬性中添加附件。

最後我們調用Send方法。

4、連絡人約會任務

  Windows Mobile中有三個很重要的程式:連絡人、約會和任務。

       我們可以使用Microsoft.WindowsMobile.PocketOutlook類庫,來調用系統中的連絡人、約會和任務資訊。我們可以通過自己的程式添加資訊。

    我們先來看一下Microsoft.WindowsMobile.PocketOutlook命名空間中很重要的一個類OutlookSession。

       該類的一個對象就表示了一個Pocket Outlook 對象模組,以前我們需要調用POOM實現的功能,現在可以通過PocketOutlook來實現。

屬性說明:

Appointments 得到約會(Calendar)目錄的資訊。

Contacts 得到連絡人目錄資訊。

EmailAccounts 得到Email帳號的集合。

SmsAccount 得到SMS帳號的資訊。

Tasks 得到任務目錄資訊的集合。

  在使用OutlookSession的時候要先建立一個OutlookSession的對象,然後建立相應的對象並添加到OutlookSession相應屬性中去。

OutlookSession session = new OutlookSession();

// 添加約會
Appointment appointment = new Appointment();
appointment.Subject = "標題";
appointment.Body = "內容";
appointment.Start = DateTime.Now;
appointment.End = new DateTime(2011, 8, 8, 12, 12, 0);

session.Appointments.Items.Add(appointment);

// 新增連絡人...
Contact contact = new Contact();
contact.FirstName = "John";
contact.LastName = "Lee";
contact.CompanyName = "公司名稱";
contact.Email1Address = "Email";
contact.MobileTelephoneNumber = "電話號碼";
contact.IM1Address = "地址";

session.Contacts.Items.Add(contact);

// 新增工作
Task task = new Task();
task.Subject = "標題";
task.Body = "內容";

session.Tasks.Items.Add(task);

  我們建立Appointment、Contact和Task對象,然後設定相應的屬性,然後添加到OutlookSession對象的相應的屬性中。

5、其他新特性

  Windows Mobile除了支援上面的特性外,還支援一些其他的新特性。比如在圖象顯示方面,Windows Mobile支援DirectX 3D Mobile。.NET應用程式可以通過Microsoft.WindowsMobile.DirectX類庫來調用D3D Mobile,而C++應用程式可以通過COM介面的方式來調用。

  在Windows Mobile裝置上普遍使用的GPS全球定位系統也得到了更好的支援。Windows Mobile提供了GPS Intermediate Driver,使應用程式可以使用統一的API介面來調用GPS系統。

  Windows Mobile提供了一個叫做“ExitWindowsEx”的函數,允許軟體重啟作業系統。Pocket PC使用該函數可以重啟系統,而Smartphone支援關機和重啟兩種功能。

  在資料庫方面,SQL Mobile雖然被廣泛使用,但是因為SQL Mobile沒有被安裝到ROM中。所以如果需要SQL Mobile就需要佔用一部分RAM記憶體空間,對於一些輕量級的應用就顯得不是很合適了。所以Windows Mobile中還包括一個輕量級的資料庫EDB,該資料庫是CEDB的升級。

        Windows Mobile為開發人員提供的新特性。很多常用的特性都被加入到了API中。但是我們還要看到,許多新特性對於複雜的應用來說,還比較簡單。如果想實現比較複雜的功能,還需要依靠自訂控制項來實現。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.