日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
如何修改WindowsCE的平臺(tái)類型(上)

在開(kāi)發(fā)Windows CE的應(yīng)用程序時(shí),經(jīng)常需要檢測(cè)平臺(tái)類型,了解我們的應(yīng)用程序運(yùn)行在Pocket PC、Smartphone還是Windows CE上。在這篇文章里,我們介紹如何編寫(xiě)一個(gè)應(yīng)用程序來(lái)檢測(cè)當(dāng)前運(yùn)行的平臺(tái)類型。

在開(kāi)發(fā)Windows CE的操作系統(tǒng)時(shí),我們會(huì)遇到另外一種情況:某些應(yīng)用程序限制了運(yùn)行的操作系統(tǒng)平臺(tái),比如只允許運(yùn)行在Pocket PC上。而我們?nèi)绻朐赪indows CE上運(yùn)行的話,就需要修改操作系統(tǒng)的平臺(tái)類型。注意:這種情況只能出現(xiàn)在測(cè)試時(shí),不應(yīng)該修改實(shí)際產(chǎn)品的平臺(tái)類型,否則會(huì)引起很多安全性的問(wèn)題。
創(chuàng)建平臺(tái)檢測(cè)程序

首先,我們需要?jiǎng)?chuàng)建一個(gè)應(yīng)用程序來(lái)檢測(cè)當(dāng)前的平臺(tái)類型,我們使用C++和Platform Builder來(lái)創(chuàng)建這個(gè)程序。如果你熟悉.NET Compact Framework的開(kāi)發(fā),想開(kāi)發(fā)托管的平臺(tái)檢測(cè)程序,請(qǐng)參考:

如何檢測(cè)你的應(yīng)用程序是否運(yùn)行在模擬器上

http://blogs.msdn.com/netcfteam/archive/2006/09/15/756755.aspx

檢測(cè)你的程序運(yùn)行在Pocket PC或Smartphone上

http://blogs.msdn.com/netcfteam/archive/2006/09/22/766343.aspx

檢測(cè)平臺(tái)是否支持觸摸屏

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

創(chuàng)建OS Design和編譯的過(guò)程在此略過(guò),可以參考《Windows CE 6.0 R2開(kāi)發(fā)初體驗(yàn)》. 我們首先在Platform Builder里創(chuàng)建一個(gè)子工程(Subporject),在Solution Explorer里找到Subporject節(jié)點(diǎn),右鍵選擇Add New Porject,會(huì)啟動(dòng)向?qū)А?/p>

在向?qū)е?,選擇WCE Application,將工程名稱改為”CheckPlatform”.

為了少寫(xiě)代碼,我們選擇”Hello World” application,一般情況下,我們應(yīng)該選擇simple Windows Embedded CE application.

我們打開(kāi)Subprojects節(jié)點(diǎn)中的CheckPlatform(工程名稱)中的Source files節(jié)點(diǎn)中找到CheckPlatform.cpp文件。在文件中找到WndProc函數(shù),將代碼修改為:

 
 
 
 
  1. TCHAR szPlatform[1024];  
  2. switch (message)  
  3. {  
  4. case WM_PAINT:  
  5. hdc = BeginPaint(hWnd, &ps);  
  6. // TODO: Add any drawing code here...  
  7. RECT rt;  
  8. GetClientRect(hWnd, &rt);  
  9. if (SystemParametersInfo(SPI_GETPLATFORMTYPE,sizeof(szPlatform),szPlatform,0)!=0)  
  10. {  
  11. DrawText(hdc, szPlatform, _tcslen(szPlatform), &rt, DT_CENTER);  
  12. }  
  13. EndPaint(hWnd, &ps);  
  14. break;  
  15. default:  
  16. return DefWindowProc(hWnd, message, wParam, lParam);  

代碼寫(xiě)的并不好,主要是為了驗(yàn)證SystemParametersInfo函數(shù),我們就將Platform Type顯示到窗體上了。正常情況下,我們應(yīng)該用下面的代碼判斷運(yùn)行平臺(tái):

 
 
 
 
  1. if (SystemParametersInfo(SPI_GETPLATFORMTYPE,sizeof(szPlatform),szPlatform,0)!=0)  
  2. {  
  3. if (lstrcmp(szPlatform,TEXT("PocketPC"))==0)  
  4. ; // Pocket PC  
  5. else if (lstrcmp(szPlatform,TEXT("Smartphone"))==0)  
  6. ; // smartphone  

文章標(biāo)題:如何修改WindowsCE的平臺(tái)類型(上)
分享路徑:http://www.5511xx.com/article/djseidg.html