Microsoft Corporation
2003 年 8 月
適用于:
Microsoft® eMbedded Visual Tools 3.0 - 2002 Edition
Microsoft® eMbedded Visual C++® 4.0 SP2
Microsoft® Visual Studio® .NET
Microsoft®.NET Compact Framework
Pocket PC 2002
Pocket PC 2003
Smartphone 2002
Smartphone 2003
摘要:本文主要介紹為基于 Windows Powered 和 Windows Mobile 的設備開發應用程序的工具和支持技術。文中不僅列出了各種工具支持的平臺,還提供了一些開發方案以及針對各種方案選擇工具和技術的指南。(本文包含一些指向英文站點的鏈接。)
簡介
移動應用程序開發工具
工具對比表
開發方案
小結
附錄:移動應用程序開發工具的推薦安裝順序
自 1996 年推出 Microsoft® Windows® CE 操作系統,以及之后不久推出 Handheld PC 1.0 版產品以來,Microsoft 已經提供了很多功能強大且日益專業化的工具,幫助開發人員在基于 Windows Mobile™ 的平臺上滿足特定的需求并完成應用程序任務。目前,Microsoft 又推出多種工具軟件包,用于在基于 Windows Mobile 的 Pocket PC 和 Smartphone 上構建應用程序。
本白皮書向開發人員介紹了 Windows Mobile 應用程序開發工具的現狀以及這些工具的發展前景。它可以幫助開發人員確定哪些開發工具最適合他們的需求,各種工具應該在什么情況下使用,以及在開始移動應用程序項目之前,移動應用程序開發人員需要做哪些準備工作。本文還對比了幾種工具的優點。
雖然目前移動開發工具的選擇多種多樣,而且還將繼續增加,但 Microsoft 的最終目標是創建一個統一的開發環境以滿足所有移動應用程序開發的需要,包括將移動開發工具集成到 Microsoft Visual Studio® .NET 的核心產品中。
移動應用程序開發工具以下幾節概要介紹目前可在基于 Windows Mobile 的 Pocket PC 和 Smartphone 上使用的工具。閱讀工具的說明時,開發人員應該將這些工具放在使用本機、托管或服務器端代碼的背景下來考慮:
Microsoft eMbedded Visual Tools 3.0 為構建移動應用程序提供了一個入口級的集成開發環境,包括必要的編譯器、調試和平臺文檔。eMbedded Visual Tools 3.0 包括 Microsoft eMbedded Visual C++® 3.0 (eVC 3.0) 和 eMbedded Visual Basic® 3.0 (eVB 3.0)。這兩種工具都是獨立的開發環境,不需要運行任何其他開發環境,如 Microsoft Visual Studio 或 Visual Studio .NET。
要開發基于 Windows Mobile 的設備,所有工具都需要使用目標設備的平臺軟件開發套件(SDK)。eMbedded Visual Tools 3.0 的 2002 版包括用于目前所有 Windows Mobile 設備(包括 Pocket PC 2002 和 Smartphone 2002)的 SDK。非 Windows Mobile 系列的設備的 SDK 應該從設備的制造商處獲得。
您可以從 http://www.microsoft.com/windowsmobile/resources/downloads/developer/default.mspx 免費下載 eMbedded Visual Tools 3.0 - 2002 Edition。
有關 eMbedded Visual Tools 的詳細信息,請參閱 http://msdn.microsoft.com/vstudio/device/embedded/default.asp。
Microsoft eMbedded Visual C++ 3.0 開發系統為基于 Windows Mobile 的開發提供了本機代碼的 C++ 編譯器。如果安裝了正確的 SDK,可以用它為所有基于 Windows CE 2.11 和 3.0 的設備開發應用程序。eMbedded Visual C++ 調試器通過 Microsoft ActiveSync® 使用有線、無線 LAN 或基座連接工作。
此外,它還提供了可用于 Pocket PC 2002 和 Smartphone 2002 設備的軟件仿真器。在發布 Pocket PC 2002 時,Microsoft 推出了一種用于 Pocket PC 2002 SDK 的新型仿真器,它更接近于真正的基于 Windows Mobile 的設備。這種新型的仿真器可以在虛擬的 PC Shell 中運行真正的 Windows CE 二進制文件。Smartphone 2002、Pocket PC 2003 和 Smartphone 2003 的 SDK 也使用這種新型的仿真器。
eMbedded Visual C++ 可用于:
eMbedded Visual Basic 3.0 支持使用 Visual Basic 語言編寫的應用程序,得到的 P 代碼在運行時解釋。盡管大多數基于 Windows Mobile 的設備具備內置的功能,以運行使用 eMbedded Visual Basic 構建的應用程序,但一些自定義的基于 Windows CE 的嵌入式硬件平臺可能不包含 eMbedded Visual Basic 運行時。Pocket PC 的 Windows Mobile 2003 軟件就不包含 Visual Basic 運行時,但可以從 Windows Mobile Developer Downloads 下載。
eMbedded Visual Basic 是一種腳本語言,而不是具備全部功能的 Visual Basic 語言。因此,Visual Basic 6.0 中為桌面系統提供的很多語言功能在 eMbedded Visual Basic 3.0 中都不受支持。例如:
eMbedded Visual Basic 不能用于為基于 Windows Mobile 2002 的 Smartphone 開發應用程序。鑒于此,加之其他一些原因(包括為了進一步發展壯大 Visual Basic .NET 開發團體),eMbedded Visual Basic 技術已逐漸被淘汰,取而代之的是功能更加強大的 Visual Basic .NET 語言。Microsoft 建議開發人員使用 Visual Basic .NET 創建所有新的 Pocket PC 應用程序,使用 eMbedded Visual Basic 維護早期版本的應用程序。
Microsoft eMbedded Visual C++ 4.0 支持新的基于 Windows CE. NET 4.2 設備的開發,而且安裝發布的 Service Pack 之后,支持用于 Pocket PC 和 Smartphone 的 Windows Mobile™ 2003 軟件(以前的代碼名為“Ozone”)。eMbedded Visual C++ 4.0 是使用本機代碼在 Windows CE .NET 4.2 上為移動或嵌入式設備開發應用程序的理想軟件。eMbedded Visual C++ 4.0 的增強功能包括:
您可以從 Developer Downloads 下載 eMbedded Visual C++ 4.0、eVC 4.0 Service Pack 2,以及用于 Pocket PC 的 Windows Mobile 2003 軟件的 SDK。
請從 Windows Mobile 2003-based Smartphones Downloads 下載 Smartphone 2003 SDK。
Visual Studio .NET 的 Smart Device Programmability (SDP) 功能(以前稱作 Smart Device Extensions [SDE])可以幫助開發人員利用 Microsoft .NET Compact Framework 編寫移動應用程序,從而在連接或斷開的情況下啟用分布式的移動計算。使用 .NET Compact Framework 中提供的大量類庫,開發人員編寫應用程序的速度可以比使用傳統工具快得多。
使用 Visual Studio .NET 2003,開發人員可以使用在桌面系統開發中用到的相同工具和技術來開發 Pocket PC 2002(如果具備相應的 SDK)以及 Pocket PC 和 Smartphone 2003。它將安裝 .NET Compact Framework,這是專門為資源有限的設備設計的。開發人員可以使用新的 C# 語言或者 Visual Basic .NET 語言來開發移動和嵌入式設備。它還可以很好地用于使用 XML Web Service 或 ADO.NET 的應用程序。
Visual Studio .NET 2003 可用于:
有關 Visual Studio .NET 的 Smart Device Programmability 功能的詳細信息,請參閱 Smart Device Programmability。
ASP.NET Mobile Controls(以前稱作 Microsoft Mobile Internet Toolkit [MMIT]),是對 Smart Device Programmability 和 .NET Compact Framework 的補充。ASP.NET Mobile Controls 通過啟用 ASP.NET 將標記發送到多種多樣的移動設備中,從而擴展了 .NET Compact Framework 和 Visual Studio .NET 構建移動 Web 應用程序的功能。使用這種方法,開發人員可以利用 Visual Studio .NET 構建一個移動 Web 應用程序,這個程序可以自動調整其頁面呈現方式以適應各種設備,如啟用 Internet 的移動電話、尋呼機和 PDA(如 Pocket PC 等)。它還能簡化開發任務,因為它已集成到 Visual Studio .NET 集成設計環境 (IDE) 中,允許開發人員通過將控件拖到移動 Web 窗體上來構建移動 Web 應用程序。
ASP.NET 不會在客戶端設備上安裝任何組件。相反,它會利用服務器端邏輯,以適應特定設備的 Web 瀏覽器的呈現方式。它可以生成無線標記語言 (WML)、HTML 和精簡的 HTML (cHTML)。
除了適應性很強的 Web 頁面呈現之外,ASP.NET 還為實現自定義和可擴展提供了豐富的框架,并提供了一種簡單的擴展控件的方法,以使控件可以適應即將上市的各種新型設備。另外,ASP.NET 還允許開發人員在同一編程模型內控制針對特定設備或設備類別的呈現方式,允許開發人員輕松地添加對新設備的支持,而不必重新編寫他們的移動 Web 應用程序。
ASP.NET Mobile Controls 可用于:
注意:ASP.NET Mobile Controls 不需要安裝任何客戶端。但是,目標設備必須具備客戶端 Web 瀏覽器。
有關 Microsoft ASP.NET Mobile Controls 的詳細信息,請參閱 Mobile Web Development with ASP.NET。
Microsoft SQL Server 2000 Windows CE Edition (SQL Server CE) 2.0 版是精簡的數據庫,可用于迅速開發將企業數據管理能力擴展至移動設備的應用程序。SQL Server CE 是一種功能強大的工具,它支持用戶熟悉的結構化查詢語言 (SQL) 語法,并提供與 SQL Server 一致的開發模型和 API,從而使移動應用程序的開發更加簡單易行。
SQL Server CE 引擎提供了一套基本的關系數據庫功能,如優化查詢處理器和對事務及各種數據類型的支持,同時它還維護保留重要系統資源的精簡內存空間。遠程數據訪問和合并復制可以確保可靠地發送 SQL Server 數據庫中的數據;既可以脫機操作,又可以在日后與服務器同步,這些優勢使得 SQL Server CE 成為用于移動和無線環境的理想軟件。
SQL Server CE 2.0 可以通過 Visual Studio .NET 與 .NET Compact Framework 集成,從而簡化了智能設備的數據庫應用程序開發。使用新的 SQL Server CE 數據提供程序通過公共語言運行庫管理代碼,移動應用程序開發人員可以在斷開的情況下,建立具有脫機數據管理功能的高度可擴展應用程序。
在以下情況下,可以將 SQL Server CE 作為開發工具的補充:
有關 SQL Server CE 的詳細信息,請參閱 Build Better Applications with SQL Server CE 2.0。
工具對比表下表概要介紹了不同工具的各種功能。
在短期內,開發基于 Windows Mobile 設備的最常用工具仍是用于 Pocket PC 2000 和 2002 的 eMbedded Visual Tools 3.0、用于 Smartphone 2002 的 eMbedded Visual C++ 3.0,以及用于 Pocket PC 和 Smartphone 2003 的 eMbedded Visual C++ 4.0。最終,Visual Studio .NET 及其提供的 Smart Device Programmability (SDP) 功能將成為所有基于 Windows Mobile 設備的開發平臺。
使用服務器端代碼還是使用客戶端代碼,取決于幾個條件。應用程序的方案雖然各不相同,但是這些條件能夠幫助您為應用程序的用戶選擇最佳的解決方案。
在開發 Pocket PC 和 Smartphone 之前,您要準備的內容取決于您要開發什么,以及要開發的設備。在大多數情況下,您需要具備集成的開發環境,以及要開發的設備的 SDK 或擴展。幸運的是,您可以在一臺計算機上開發所有的基于 Windows Mobile 的設備,因為所有工具都可以在這兩類設備上共存。有關我們推薦的安裝順序,請參閱附錄。
目前,eMbedded Visual Tools IDE 和所需的 SDK 都是免費的,可以通過 Web 下載。
性能、控制或資源對我來說非常重要。例如,我要編寫一個游戲、設備驅動程序或者一個 Active X 組件……
如果您打算開發運行 Windows Mobile 2003 軟件的 Pocket PC 和 Smartphone,只需從 Developer Downloads 下載 eMbedded Visual C++ 4.0 Service Pack 2 和 Pocket PC 2003 SDK。您還可以使用 Smartphone 2003 SDK 為 Smartphone 開發 Windows Mobile™ 2003 軟件。
要支持早期的 Pocket PC、Pocket PC 2002 和 Smartphone 2002 設備,您還需要下載 eMbedded Visual Tools 3.0 - 2002 Edition。
如果您需要維護開發 Handheld PC Professional Edition、Handheld PC 2000 或 Palm Size PC 1.2 的應用程序,可以下載 SDKs for eMbedded Visual Tools 3.0。
我要在一個安全、可靠的環境中快速開發應用程序,我可能要訪問 Web 服務……
我要編寫一個具有最大的代碼可移植性的客戶端應用程序……
我要利用自己掌握的 Visual Studio .NET 2003、Visual C#、Visual Basic.Net 或 .NET Framework 知識……
我們建議您使用 Visual Studio .NET 2003 中的 Smart Device Programmability 功能。.NET Compact Framework 是內置到基于 Windows Mobile 2003 的 Pocket PC 和 Smartphone 中的。它可以用于 Pocket PC 2002,但必須安裝到設備上。
我要開發 Smartphone 2002……
您應該下載 eMbedded Visual Tools 3.0 - 2002 Edition。
如果您希望在真正的設備上測試應用程序,但是您所在的地區尚無 Smartphone,或者 Smartphone 不支持開發,您可以購買 Smartphone Developer Kit。
我要使用一個代碼庫開發 Pocket PC 2002 和 Pocket PC 2003……
您可以用兩種方法構建您的應用程序:
我要使用一個代碼庫開發 Smartphone 2002 和 Smartphone 2003……
.NET Compact Framework 不能用于 Smartphone 2002。要編寫一個代碼庫以在 Smartphone 2002 和 Smartphone 2003 上運行,您必須使用本機代碼并使用 eMbedded Visual C++ 3.0 編譯您的應用程序。
我要維護用 eMbedded Visual Basic 編寫的應用程序……
您應該下載 eMbedded Visual Tools 3.0 - 2002 Edition,它包含 eMbedded Visual Basic 的開發環境、仿真器和 SDK。
請考慮使用 Visual Basic .NET 2003 將應用程序導出到 .NET Compact Framework。
我要為可以在瘦客戶端環境中運行的各種移動設備編寫應用程序。我要維護用 eMbedded Visual Basic 編寫的應用程序……
您應該在 Visual Studio .NET 2003 中使用 ASP.Net Mobile Controls。有關詳細信息,請參閱 Mobile Web Development with ASP.NET。
小結Microsoft 致力于在移動設備市場取得長期成功,并幫助開發人員為他們的企業用戶和客戶提供功能豐富、強大的移動應用程序。目前的基于 Windows Mobile 的應用程序開發語言提供了一系列令人難以置信的能力和靈活性。
隨著新的移動設備不斷問世,Microsoft 將繼續推出更加尖端、更加統一的開發工具,幫助開發人員快速地設計和開發利用 Web 服務等技術的新的應用程序,以及利用基于 .NET 集成能力的系統。有了這些實用的工具,移動應用程序開發團體將不斷為快速發展的市場提供滿足市場要求的應用程序。
附錄:移動應用程序開發工具的推薦安裝順序為確保在 Windows Mobile 軟件的各種開發工具之間獲得最大的互操作性,我們建議您按照以下順序安裝這些工具和 SDK。如果您沒有或者不需要其中的某種工具,則不必專門來獲取這種工具,因為這不會影響其他工具之間的互操作。
以下安裝步驟要求您使用具有本機管理員權限的帳戶登錄到計算機。