本文描述了如何搭建典型的
Windows Mobile開發(fā)環(huán)境。介紹了相應的IDE、SDK及輔助開發(fā)工具的安裝及常用配置,并對
Windows Mobile下一代開發(fā)環(huán)境的發(fā)展前景做出展望。本文適合初次接觸Windows Mobile開發(fā)的開發(fā)人員。
Windows Mobile開發(fā)簡介 Windows Mobile是微軟公司
操作系統(tǒng)產品線上重要的一環(huán)。與Windows 9x/NT/XP/2003相比,Windows Mobile作為完整產品線出現在公眾面前的時間非常短,但它的發(fā)展卻異常迅速,而在這一發(fā)展過程中,開發(fā)人員提供了絕對關鍵的推動力。現在,越來越多的開發(fā)人員(特別是
.net開發(fā)人員)希望能盡快進入Windows Mobile的開發(fā)領域,而他們所面臨的首要問題,除了熟悉Windows Mobile平臺特性之外,便是如何搭建適合的開發(fā)環(huán)境。因此,本文就將從如何搭建一個Windows Mobile開發(fā)環(huán)境入手,對Windows Mobile平臺的開發(fā)特性進行概要描述,以期幫助開發(fā)人員迅速進入Windows Mobile開發(fā)領域。
在展開本文的內容之前需要說明的一點是,Windows Mobile平臺開發(fā)主要包含以下兩方面內容:
平臺級開發(fā)
應用級開發(fā)
因為Windows Mobile平臺構建于微軟的Windows CE系列操作系統(tǒng)之上(當前正式商用版本為Windows CE .NET 4.21),而Windows CE操作系統(tǒng)具有非常良好的模塊化特性,因此開發(fā)人員,特別是
手機設備廠商,可以通過微軟提供的Platform Builder及eMbedded Visual
C++(以下簡稱為e
VC)非常方便地定制自己所需的操作系統(tǒng)。這對應的是上面所說的平臺級開發(fā)。
然而,絕大多數的開發(fā)人員并不需要去構建一個全新的、個性化的系統(tǒng),他們只需要關心如何構建能夠運行在Windows Mobile設備上的應用程序。為此,微軟按主要智能設備自身
硬件設備特性的不同以及用戶體驗的差異,定制出了Windows CE .NET 4.x系列操作系統(tǒng)的兩個主要分支,分別安裝在不同的Windows Mobile硬件設備中,從而也就構成了我們通常所說的Pocket PC和Smartphone。以下內容中的Windows Mobile開發(fā),除特指之外,均表示Pocket PC/Smartphone開發(fā)。
本文中提供的大量開發(fā)工具,除單獨標出的以外,均可在http://msdn.microsoft.com/mobility/downloads/default.
ASPx
下載。
迅速搭建開發(fā)環(huán)境
為了進行Windows Mobile開發(fā),我們需要搭建相應的開發(fā)環(huán)境。所幸的是,這一環(huán)境搭建起來非常簡單。
安裝Visual Studio .NET 2003
為了降低Windows Mobile的開發(fā)難度,提高開發(fā)人員的開發(fā)效率,微軟把.NET
Framework移植到了Windows Mobile設備上,針對Windows Mobile設備及Windows CE .NET操作系統(tǒng)設計了.NET Compact Framework(以下簡稱.NET CF)。而Visual Studio .NET 2003正是開發(fā).NET CF應用程序的最佳IDE。在Visual Studio .NET 2003的安裝中默認集成了.NET CF 1.0,同時提供了Pocket PC 2002的開發(fā)模板,可以直接用來開發(fā)Pocket PC 2002應用程序。
您也可以選擇Visual Studio 2005作為開發(fā)工具,目前最高版本為Beta 1 Refresh。在Visual Studio 2005中,默認提供了Pocket PC/Smartphone 2003 SE(第二版)的開發(fā)模板,同時將Pocket PC 2003 SE開發(fā)使用.NET CF版本升級到2.0 (beta)。
安裝eVC (可選)
以上環(huán)境已經完全可以基于.NET CF開發(fā)Windows Mobile應用程序。但如果您想使用C/C++語言來進行native開發(fā),或者想在Windows Mobile設備上開發(fā)COM組件及應用,那么可以選擇eVC作為開發(fā)工具。目前eVC的最高版本為4.0 + SP4,請確保安裝了最新的補丁包。
也許您會問:既然已經有了Visual Studio .NET環(huán)境,為什么還要使用eVC作為開發(fā)工具呢?這主要是因為,當前的.NET CF功能相對而言還很不完整,有很多Windows CE .NET操作系統(tǒng)的核心功能沒有被封裝入.NET CF,如:加密/解密、網絡底層通訊、COM互操作、RAPI等等。為了完成上述操作,我們或者使用平臺調用(P/Invoke)以托管方式開發(fā),或者使用eVC直接針對系統(tǒng)底層進行native開發(fā)。對于COM互操作,目前.NET CF還不提供COM互操作(Interop)機制,只能使用eVC進行C/C++ COM開發(fā)。好消息是,在.NET CF 2.0中將提供功能強大的COM互操作特性支持,同時也將在Visual C++ 2005環(huán)境中同時提供managed及native開發(fā)功能,這樣所有的開發(fā)工作將完全整合在Visual Studio 2005同一環(huán)境中。
安裝Pocket PC/Smartphone 2003 SDK
為了開發(fā)Pocket PC 2003或Smartphone 2003應用程序,您還需要安裝Pocket PC 2003 SDK或Smartphone 2003 SDK。值得注意的是,這兩款SDK中所包含的模擬器均為英語環(huán)境,如果您想使用簡體中文環(huán)境的模擬器,請去微軟網站上單獨下載。 如果您使用Visual Studio 2005開發(fā)Windows Mobile應用程序,則不需要單獨安裝相應的SDK,因為SDK已經被默認集成至了Visual Studio 2005環(huán)境中。
SQL Server CE (可選)
這是Pocket PC上推薦使用的嵌入式
數據庫產品,它與SQL Server桌面版之間可以實現良好的數據同步及互操作,目前正式版的最新版本為2.0。在SQL Server 2005 Beta 2測試版中,包含有SQL Server CE 2.0的升級版本SQL Server 2005 Mobile Edition——不過該版本目前只支持Pocket PC 2003系統(tǒng)。預計SQL Server Mobile Edition在下一個版本中才能提供對Smartphone的支持。