成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何修改Windows CE的平臺類型(下)

開發
本文介紹如何修改Windows CE的平臺類型,我們介紹如何編寫一個應用程序來檢測當前運行的平臺類型。

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

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

選擇Target菜單中的Target

好了,***看一下運行結果:

查看運行結果


修改操作系統的類型

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

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

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

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

我們修改的是DEVICEEMULATOR的代碼,如果是其他平臺的代碼,則去相應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通過編譯選項區分了不同的平臺類型,如果是Windows CE系統,則Platform Type為DeviceEmulator。好了,我們可以通過修改IOCTL_PLATFORM_TYPE的值,來“欺騙”操作系統,讓應用程序認為自己運行在Pocket PC或Smartphone上。注意:因為Windows Mobile和Windows CE的函數庫存在巨大差異,Windows Mobile的應用程序在Windows CE上未必能夠直接運行。

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

在Build菜單中選擇Advanced

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

NK編譯成功后,選擇Attach Device,重新運行系統和CheckPlatform程序,會得到下面的運行結果:

查看運行結果

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

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

【編輯推薦】

  1. Windows Embedded Standard 2009 功能簡介
  2. 微軟計劃通過Windows Embedded進軍Smartbook市場
  3. Windows Embedded嵌入式系統的特色
  4. 在Windows Embedded中創建Silverlight組件
  5. Windows Embedded與生活息息相關
責任編輯:佚名 來源: 博客園
相關推薦

2009-07-16 14:52:00

修改Windows C平臺類型

2009-04-11 15:12:24

Windows CE串行通信GPS

2009-05-28 13:27:33

Windows CE

2010-02-25 15:30:47

SDRAMWindows CE

2009-07-16 10:23:43

AD驅動Windows CE

2010-01-13 14:18:52

Windows Emb

2010-03-31 16:36:35

Windows CE

2009-08-17 09:57:00

C# Windows

2011-06-27 09:49:53

Windows CEAndroid

2011-08-01 16:52:42

Windows CE 嵌入式

2009-04-22 17:18:29

WindowsCEVistaXP

2010-03-17 14:21:47

Windows Emb

2010-02-25 14:27:59

Windows CE

2009-07-06 18:01:04

Windows CE未公開函數

2010-05-28 09:31:10

修改SVN密碼

2010-05-05 13:16:02

Windows PhoWindows CE

2015-10-28 09:56:47

云計算Windows10Windows應用

2009-09-24 09:45:07

Windows Emb

2009-08-17 09:27:12

c# Windows

2010-03-30 15:44:16

Windows CE
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一级特黄色毛片 | 日韩av免费在线观看 | 91免费观看 | av色在线 | 日韩免费 | 日韩精品久久一区二区三区 | 不卡一区二区在线观看 | 成人一区二区三区 | 一区二区三区在线免费观看 | 日韩在线小视频 | 美国黄色毛片 | 青娱乐一区二区 | 一区二区三区国产精品 | 成人在线一区二区三区 | 美女久久久久久久久 | 国产精品人人做人人爽 | 羞羞视频一区二区 | 欧美福利视频 | 99久久婷婷国产综合精品电影 | 激情亚洲 | 成人亚洲网 | 三级av网址 | 粉嫩av| 欧美一区二区三区在线免费观看 | 日韩精品视频中文字幕 | 欧美精品中文字幕久久二区 | 亚洲欧美在线观看视频 | 欧美中文字幕一区二区三区 | 国产资源一区二区三区 | 成人亚洲视频 | 国产精品视频不卡 | 成人教育av | 一区二区免费 | 亚洲精品大全 | 欧美激情久久久 | 日韩视频区 | 久久青草av | 国产一区二区三区在线视频 | 色橹橹欧美在线观看视频高清 | 国产精品久久av | 国产精品日韩欧美 |