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

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

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
如何修改WindowsCE的平臺類型(下)

如果使用SPI_GETOEMINFO參數(shù),我們可以獲得OEM信息,如果返回字符串中包括“Microsoft DeviceEmulator”,則表示當(dāng)前應(yīng)用程序運(yùn)行在模擬器中。

公司主營業(yè)務(wù):成都網(wǎng)站建設(shè)、做網(wǎng)站、移動網(wǎng)站開發(fā)等業(yè)務(wù)。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊。公司秉承以“開放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領(lǐng)域給我們帶來的挑戰(zhàn),讓我們激情的團(tuán)隊有機(jī)會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)推出武鄉(xiāng)免費(fèi)做網(wǎng)站回饋大家。

CheckPlatform 程序編譯好后,會自動加入到NK.bin 中。我們可以通過Command Shell,運(yùn)行應(yīng)用程序。調(diào)用Attach Device啟動Windows CE操作系統(tǒng)后,選擇Target菜單中的Target Control(快捷鍵Alt+1),輸入”s chekplatform”,就可以運(yùn)行CheckPlatform程序。

好了,***看一下運(yùn)行結(jié)果:

修改操作系統(tǒng)的類型

上面的話題其實很多文章都討論過了。但是在實際工作中,我們會遇到一些平臺遷移的工作。我們會首先將 Windows Mobile的軟件在Windows CE上運(yùn)行,以驗證功能。不過有些軟件檢測了操作系統(tǒng)類型,在不修改軟件代碼的情況下,我們是否可以在Windows CE上運(yùn)行檢測平臺類型的應(yīng)用程序呢?

Windows CE操作系統(tǒng)的Platform Type類型值是在BSP中被指定的,我們可以通過修改BSP中的Platform Type來改變系統(tǒng)的Platform Type。注意:這種情況只能出現(xiàn)在測試時,不應(yīng)該修改實際產(chǎn)品的平臺類型,否則會引起很多安全性的問題。

我們打開Windows CE 6.0 R2的源代碼,位置在:

x:\WINCE600\PLATFORM\DEVICEEMULATOR\SRC\INC

我們修改的是DEVICEEMULATOR的代碼,如果是其他平臺的代碼,則去相應(yīng)BSP文件夾中的指定位置。在BSP的INC文件夾中,我們會找到一個ioctl_cfg.h文件。

在ioctl_cfg.h文件中,我們會找到下面的代碼:

  
  
 
 
  1. #if defined( project_smartfon )  
  2. #define IOCTL_PLATFORM_TYPE (L"SmartPhone\0")  
  3. #elif defined( project_wpc )  
  4. #define IOCTL_PLATFORM_TYPE (L"PocketPC\0SSDK\0")  
  5. #else  
  6. #define IOCTL_PLATFORM_TYPE (L"DeviceEmulator")  
  7. #endif  
  8. #define IOCTL_PLATFORM_OEM (L"Microsoft DeviceEmulator") 

Device Emulator的BSP通過編譯選項區(qū)分了不同的平臺類型,如果是Windows CE系統(tǒng),則Platform Type為DeviceEmulator。好了,我們可以通過修改IOCTL_PLATFORM_TYPE的值,來“欺騙”操作系統(tǒng),讓應(yīng)用程序認(rèn)為自己運(yùn)行在Pocket PC或Smartphone上。注意:因為Windows Mobile和Windows CE的函數(shù)庫存在巨大差異,Windows Mobile的應(yīng)用程序在Windows CE上未必能夠直接運(yùn)行。

修改IOCTL_PLATFORM_TYPE之后,我們需要重新編譯BSP,才能夠完成Platform Type的修改。在Build菜單中選擇Advanced Build Commands中的Rebuild Current BSP and Subprojects。

我們可以編譯BSP和Subporject后,調(diào)用BuildRel和Makeimg生成新的NK.bin。這樣,我們就可以節(jié)省大量的重新編譯的時間。在我的機(jī)器上大概幾分鐘就完成了BSP的編譯,如果是重新Build操作系統(tǒng)的話,需要二十分鐘左右。

NK編譯成功后,選擇Attach Device,重新運(yùn)行系統(tǒng)和CheckPlatform程序,會得到下面的運(yùn)行結(jié)果:

***還需要提示一下,這種方法只對通過SystemParametersInfo API檢測Platform Type的應(yīng)用程序有效。如果軟件使用了其他方法檢測Platform Type的話,那就需要具體問題具體分析了。

更多關(guān)于Windows Embedded CE開發(fā)的文章,請參考“Windows Embedded CE 中國研發(fā)團(tuán)隊”的中文博客:http://blogs.msdn.com/wincechina/


網(wǎng)頁名稱:如何修改WindowsCE的平臺類型(下)
新聞來源:http://www.5511xx.com/article/ccejhgs.html