wenxinwukui

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  5 随笔 :: 0 文章 :: 33 评论 :: 0 引用

抠出Visual Studio 2005中的Windows Mobile模拟器

 

近一段时间,我正在用Visual Studio 2005开发一个基于Pocket PC 2003的软件。Visual Studio 2005中集成了Windows Mobile设备仿真程序(俗称模拟器),确实很方便。每当与客户沟通时,我总是带着自己的笔记本去演示。但演示过后,我把笔记本带回来,客户就看不到程序,没办法进行一些测试工作。因此,客户提出来,希望在他的电脑上也装上Pocket PC 2003的模拟器,可以随时运行程序,进行测试。如果在客户的电脑上也安装一套Visual Studio 2005开发环境,每次去演示时,将最新版本的源程序拷贝过去,虽然能解决问题,但是,安装一套Visual Studio 2005太麻烦了,并且这样也不能保护自己的源代码,所以这种方法绝对不行。那能否从已安装好的Visual Studio 2005开发环境中,将Windows Mobile设备仿真程序单独提出来呢?几经摸索,终于成功了。现将操作过程拿出来,与大家分享。

为了叙述方便,我将我的笔记本(已安装Visual Studio 2005)称为A机,将客户的电脑称为B机。

 

1、在B机上安装设备仿真程序

1)先确保B机上已安装了Windows Install 3.0以上版本。

2Visual Studio 2005  安装光盘上的 wcu\ARM\vs_emulator.exe是设备仿真程序的安装向导,双击运行,然后按照提示进行操作。设备仿真程序默认安装在C:\Program Files\Microsoft Device Emulator\1.0文件夹下。DeviceEmulator.exe是设备仿真器程序,dvcemumanager.exe是设备仿真器管理器。

 

2、将A机上的内核映像文件复制到B

设备仿真程序要模拟哪一种设备,就需要用到这种设备的内核映像文件(扩展名为bin)。在BC:\Program Files\Microsoft Device Emulator\1.0文件夹下新建一个images文件夹,并根据需要将下面A机中的映像文件复制到这里。

 

Pocket PC 2003 SE的映像文件默认安装在C:\Program Files\Microsoft Visual Studio 8\SmartDevices\Emulators\Images\PocketPC\2003\2052文件夹下,文件名是PPC_2003_SE_CHS_ARMv4.bin

Pocket PC 2003 SE VGA的映像文件默认安装在C:\Program Files\Microsoft Visual Studio 8\SmartDevices\Emulators\Images\PocketPC\2003\VGAPortrait\2052文件夹下,文件名PPC_2003_SE_VGA_CHS_ARMv4.bin

Smartphone 2003 SE的映像文件默认安装在C:\Program Files\Microsoft Visual Studio 8\SmartDevices\Emulators\Images\Smartphone\2003\2052文件夹下,文件名SP_2003_SE_CHS_ARMv4.bin

Smartphone 2003 SE QVGA的映像文件默认安装在C:\Program Files\Microsoft Visual Studio 8\SmartDevices\Emulators\Images\Smartphone\2003\QVGA\2052文件夹下,文件名SP_2003_SE_QVGA_CHS_ARMv4.bin

 

因为我在A机中安装了Windows Mobile 5.0 Pocket PC SDKWindows Mobile 5.0 Smartphone SDK,所以也可以找到相应映像文件。

中文CHS Windows Mobile 5.0 Pocket PC的映像文件默认安装在C:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Emulator Images for Pocket PC - CHS\Deviceemulation\0804文件夹下。

中文CHS Windows Mobile 5.0 Smartphone的映像文件默认安装在C:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Emulator Images for Smartphone - CHS\Deviceemulation\0804文件夹下。

英文Windows Mobile 5.0 Pocket PC的映像文件默认安装在C:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Pocket PC SDK\Deviceemulation\0409文件夹下。

英文Windows Mobile 5.0 Smartphone的映像文件默认安装在C:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Smartphone SDK\Deviceemulation\0409文件夹下。

 

3、将A机上的外观文件复制到B

在设备仿真程序运行时,还可以为仿真程序指定外观文件,以获得更逼真的效果。每一种外观由三个bmppng文件和一个xml 文件组成,并且保存在同一个文件夹下。xml文件是外观定义文件,三个bmppng 图像文件分别显示仿真程序的默认外观、所有按钮均为按下状态的仿真程序外观和由一种颜色填充的每个按钮的区域。

B机的C:\Program Files\Microsoft Device Emulator\1.0文件夹下新建一个skins文件夹,并将A机中相应的外观文件复制到这里。

 

PocketPC2003Smartphone 2003的外观文件在C:\Program Files\Microsoft Visual Studio 8\SmartDevices\Skins文件夹中。

Windows Mobile 5.0 Pocket PC的外观文件在C:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Pocket PC SDK\Deviceemulation文件夹下除0409子文件夹外其它的文件夹中。

Windows Mobile 5.0 Smartphone的外观文件在C:\Program Files\Windows CE Tools\wce500\Windows Mobile 5.0 Smartphone SDK\Deviceemulation文件夹下除0409子文件夹外其它的文件夹中。

 

4、在B机上安装Microsfot ActiveSync 4.2简体中文版

这主要是为了便于设备仿真程序与B机之间进行数据同步。

 

5、在B机上创建桌面快捷方式

1)为C:\Program Files\Microsoft Device Emulator\1.0\dvcemumanager.exe创建桌面快捷方式“设备仿真器管理器”。

2C:\Program Files\Microsoft Device Emulator\1.0文件夹下DeviceEmulator.exe是设备仿真器程序,应该带参数运行。

主要开关参数如下:

os_image_file_name:指定仿真程序要使用的内核映像的路径和文件名称(*.bin *.nb0)。除非使用 /s 开关启动,否则为必需的参数。

/skin skin_file_name:加载指定的外观文件。

/s filename:指定保存状态文件。如果没有指定任何 ROM 映像,则必须有 /s filename,仿真程序将从指定的保存状态文件还原。当该仿真程序退出时,它会将新状态保存到保存状态文件的最前面。

只要弄清楚了某种设备的映像文件和对应的外观文件,就可以创建该设备仿真程序的快捷方式。

Pocket PC 2003 SE为例,先为DeviceEmulator.exe创建桌面快捷方式“Pocket PC 2003 SE”,然后修改该快捷方式的“目标”为:

"C:\Program Files\Microsoft Device Emulator\1.0\DeviceEmulator.exe" images\PPC_2003_SE_CHS_ARMv4.bin /skin skins\PocketPC_2003\2052\PocketPC_2003_Skin.xml

(3)如果弄不清映像文件与外观文件的对应关系,可打开A机的Visual Studio 2005查看。

依次点击“工具”—>“选项”—>“设备工具”—>“设备”,见图1

1

 

 

选中某一设备,点击“属性”按钮,见图2

2

 

点击“仿真器选项”按钮,可看到该种设备的映像文件名称,见图3

3

 

在“显示”选项卡中,可看到对应的外观文件,见图4

4

 

4)如果在B机桌面了创建了多个设备仿真程序的快捷方式方式,会显得比较凌乱,应该把它们组织到程序菜单中比较好。

 

好了,客户的电脑上也有了Pocekt  PC 2003模拟器。什么时候想测试程序,只要点击菜单启动模拟器,再通过ActiveSync将应用程序布署到模拟器上运行就行了。但每次测试时,都要部署一遍,并且客户对电脑操作又不太熟练,感觉还是有点儿麻烦。因此,客户又提出来,能不能再简单点儿呢?

答案是肯定的。只要用上前面提到的“/s”开关参数,就能解决这个问题。

6、将A机上的设备仿真程序保存状态文件复制到B

设备仿真程序使用 .dess扩展名的文件,来保存设备仿真程序中所有的 RAMROM 和设置信息。因此,.dess 文件是还原保存状态时必需的唯一文件。我在A机上调试程序时,会将程序部署到A机上的设备仿真程序中。调试通过后,关闭设备仿真程序时,系统询问“退出之前保存仿真程序状态吗?”,此时选择“是”,将产生一个保存状态文件,默认情况下位于C:\Documents and Settings\<username>\Application Data\Microsoft\Device Emulator 下,文件名为{B22C75F5-ABFC-4ca8-954F-7D4AB28CF096}.dess。保存状态文件的文件名是仿真程序的当前虚拟机标识符 (VMID),在不同的机器上会有所不同。

(1)BD盘上新建一个Emulator文件夹。

(2)A机上的{B22C75F5-ABFC-4ca8-954F-7D4AB28CF096}.dess复制到B机的D:\ Emulator文件夹下。

(3)B机的桌面上创建快捷方式“我的Pocekt PC 2003”,修改快捷方式的目标为:

"C:\Program Files\Microsoft Device Emulator\1.0\DeviceEmulator.exe" /s d:\emulator\{B22C75F5-ABFC-4ca8-954F-7D4AB28CF096}.dess

这样,客户只要双击桌面上的“我的Pocekt PC 2003”,就可直接测试程序,无需通过ActiveSync重新布署了。而我修改程序后,只要将最新的保存状态文件传给客户,覆盖掉原来的文件即可。以后双方交流的时候,无需见面,在网上就可以进行了。

posted on 2007-01-17 09:07 问心无愧 阅读(7212) 评论(22)  编辑 收藏 网摘

评论

好有钱哦,每个用户给送一套VS2005
  回复  引用    

#2楼 2007-01-17 10:34 didasoft      
太好了,正好有此需要。
  回复  引用  查看    

#3楼 2007-01-17 10:47 aspnetx      
好文章

有一个地方我感觉好奇怪,就是楼主所说的客户那头既然要上Mobile的项目,居然没有物理设备.

  回复  引用  查看    

#4楼 2007-01-17 11:30 igolg[未注册用户]
igolg中国
最专业的欧服美服魔兽世界金币收货站
http://www.igolg.cn">http://www.igolg.cn


公司简介

天盟(公司网站)公司成立于2005年5月,总部注册在香港,在福州设有分公司。主要面对国外虚拟货币销售服务,为玩家提供虚拟货币的买卖跟销售,让每个玩家更好的体验自己的游戏历程,
经过1年多时间,天盟公司取得了辉煌的成就,业务涉及到的在线游戏已经拓展到了17款.员工达到了150多人,IGOLG中国 作为天盟旗下专业的虚拟货币收购平台,主要负责美服wow跟欧服wow的收购业务.

IGOLG中国 的宗旨
通过先进的交易模式,打造优质的服务理念。

IGOLG中国 的优势:最合理的价格 快速安全的交易 即时打款 完善的网站交易系统
1,市场决定一切,IGOLG中国 一直坚持这个理念,所以我们推出的价格一定会是最合理的.
2,快速安全的交易才能够让供货商无后顾之忧.IGOLG中国 作为老牌信誉收货网站绝对可以让供货商们感到100%的安全保障.
3,先进快速的即时结款方式.

IGOLG中国 的服务
IGOLG中国 拥有一大批训练有素而且精通各款游戏的服务人员,提供7*24小时的持续服务。在每个不眠之夜,IGOLG也将一直陪伴着大家.

我们的口号
狭路相逢勇者胜

国内网站:http://www.igolg.cn">http://www.igolg.cn

客服热线:0591-83021873 0591-63305520

业务洽谈QQ:35023


  回复  引用    

#5楼 2007-01-17 11:38 Evan[未注册用户]
相当无语,您就不能单独下载个模拟器么?又不是载不到,费这心思研究从VS里抠干嘛
  回复  引用    

#6楼 2007-01-17 11:40 A.Z[未注册用户]
@Evan
en

  回复  引用    

#7楼 2007-01-17 11:58 cg1120[未注册用户]
我晕哦,你只要安装一个。NET发布版框架就可以运行你的程序!
  回复  引用    

#8楼 2007-01-17 13:00 s[未注册用户]
相当无语,您就不能单独下载个模拟器么?又不是载不到,费这心思研究从VS里抠干嘛

笨,这样可以上首页啊

哈哈~~~~~

  回复  引用    

#9楼 2007-01-17 16:53 papersnake
牛,一语道破天机
  回复  引用    

#10楼 2007-01-18 07:56 aspnetx      

之所以说好是因为佩服作者对vs2005的熟悉程度

如果象楼上几位所说的话,那么还要我们这些做.net开发的做什么,谁要一个程序到网站上下载一个不就搞定了么

记得当时kaneboy做quickpart的说明的时候,用的是iframe的一个应用,也照有人说那样费尽.实际上,看的人根本没看明白作者到底要说的是什么


  回复  引用  查看    

#11楼 2007-01-22 10:40 igolg[未注册用户]
厉害。。顶过。


http://www.igolg.cn

  回复  引用    

#12楼 2007-01-26 17:27 igolg[未注册用户]
再顶一次~~

http://www.igolg.com

  回复  引用    

#13楼 2007-03-22 17:18 pkunet[未注册用户]
再顶一次~~
强强!
-------------
http://pkunet.cn
http://tchb.cn
http://wenyuda.cn

  回复  引用    

#14楼 2007-04-02 18:28 身份[未注册用户]
不错,支持
  回复  引用    

#15楼 2007-08-07 04:21 孙[未注册用户]
希望版主少做无聊无用之举.Windows Mobile设备仿真程序:Microsoft Device Emulator 2.0 – 独立版,1.0 版已经随 Visual Studio 2005 一同发行。详见http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=dd567053-f231-4a64-a648-fea5e7061303,可马上下载.大小955 KB

  回复  引用    

#16楼[楼主] 2007-08-07 16:18 问心无愧      
@孙
Microsoft Device Emulator 1.0 有独立版吗?我不知道,反正当时我没搜到。不然我也真不做这无用之举了。为什么2.0推出一个独立版呢?还是有这种需求吗?
我刚学.NET时,觉得VS2003中的资源文件编辑功能不好,就做了一个.net资源文件生成器(针对VS2003的,对VS2005为不适用了),现在网上还搜的到。后来,微软在VS2005中就改进了资源文件编辑功能,这说明什么?说明微软也意识到客户有这种需求。
我觉得VS2005中没有站点地图文件的编辑功能,就做了这样一个小插件http://www.cnblogs.com/wenxinwukui/archive/2006/11/05/551014.aspx" target="_new">http://www.cnblogs.com/wenxinwukui/archive/2006/11/05/551014.aspx。因此,在此大胆预言一下,微软在下一个版本的VS中一定会增加同样的功能。
博客是一个分享的平台。对你没用的,对别人不一定没用。对你提供了下载地址,表示感谢。

  回复  引用  查看    

顶顶!

http://www.gamegamego.com/
http://www.gamegamego.com/runescape.asp
http://www.gamegamego.com/rs2/index.html

  回复  引用    

很好,很有用。谢谢分享!
  回复  引用    

顶一下
  回复  引用    

#20楼 2007-11-13 17:43 121[未注册用户]
http://www.wow-powerleveling-wow.com


121

  回复  引用    

#21楼 2007-12-23 16:15 qiqi[未注册用户]
<a href=http://www.mmo-wiki.com>mmoprg wiki</a>
<a href=http://www.mmo-wiki.com>mmoprg game</a>
<a href=http://www.questmonk.com/final-fantasy-xi-money-gold-11.html>ffxi gil</a>
<a href=http://www.questmonk.com/rs2-gold-1.html>runescape money</a>

  回复  引用    

#22楼 2009-06-11 02:48 wwwww[未注册用户]
如果安装了模拟器,但系统提示需要安装更高版本的.NET CF,该怎么办
我是在VS2008下,用.net cf 3.5开发的一个游戏

  回复  引用    




发表评论

昵称: [登录] [注册]

主页:

邮箱:(仅博主可见)

评论内容:

  登录  注册

[使用Ctrl+Enter键快速提交评论]

0 622204




相关文章:

相关链接: