在開發Windows CE的應用程式時,經常需要檢測平台類型,瞭解我們的應用程式運行在Pocket PC、Smartphone還是Windows CE上。在這篇文章裡,我們介紹如何編寫一個應用程式來檢測當前啟動並執行平台類型。
在開發Windows CE的作業系統時,我們會遇到另外一種情況:某些應用程式限制了啟動並執行作業系統平台,比如只允許運行在Pocket PC上。而我們如果想在Windows CE上啟動並執行話,就需要修改作業系統的平台類型。注意:這種情況只能出現在測試時,不應該修改實際產品的平台類型,否則會引起很多安全性的問題。
建立平台檢測程式
首先,我們需要建立一個應用程式來檢測當前的平台類型,我們使用C++和Platform Builder來建立這個程式。如果你熟悉.NET Compact Framework的開發,想開發託管的平台檢測程式,請參考:
如何檢測你的應用程式是否運行在模擬器上
http://blogs.msdn.com/netcfteam/archive/2006/09/15/756755.aspx
檢測你的程式運行在Pocket PC或Smartphone上
http://blogs.msdn.com/netcfteam/archive/2006/09/22/766343.aspx
檢測平台是否支援觸控螢幕
http://blogs.msdn.com/netcfteam/archive/2006/10/02/Platform-detection-III_3A00_-How-to-detect-a-touch-screen-on-Windows-CE-in-.NET-CF.aspx
建立OS Design和編譯的過程在此略過,可以參考《Windows CE 6.0 R2開發初體驗》. 我們首先在Platform Builder裡建立一個子工程(Subporject),在Solution Explorer裡找到Subporject節點,右鍵選擇Add New Porject,會啟動嚮導。
在嚮導中,選擇WCE Application,將工程名稱改為”CheckPlatform”.