体验新一代Windows CE: Windows Embedded Compact 7

时间:2024-03-02 10:54:44

新一代的Windows CE被命名为Windows Embedded Compact 7,发布于2010年6月1日的COMPUTEX TAIPEI国际电脑展。在微软内部的代号是Chelan,微软早在2008年就开始在北京招兵买马,2010年终于公开了一个Release:Public Community Technology Preview。

 

关于命名

在被命名为Windows Embedded Compact 7以前,曾被命名为Windows Embedded Compact 2011,但是我觉得Windows Embedded Compact 7是一个更好的名字。Windows Embedded是产品家族名称,相似的产品家族有办公软件Microsoft Office和设计工具Microsoft Expression等。Compact是产品名称,例如Microsoft Office Word和Microsoft Expression Blend等,同时也对应.Net Compact Framework和SQL Server Compact。7是版本号,以7为版本的有Windows 7,Windows Phone 7,Windows Embedded Standard 7。我觉得似乎没有一个比这个更适合的命名了,微软和清晰的规划出了自己产品蓝图,准确的找到了自己的产品市场定位。但是不得不承认的是,频繁的命名不仅要为从事市场工作的微软员工和合作伙伴们增加了麻烦,他们不得不再次去推广概念,树立品牌。对于开发者来说,我们在搜索文档的时候可能需要再增加了一个关键字才能找到匹配的文档,这无形中增加了成本。我的观点是我很赞同这个命名,但是很不赞同频繁的更改命名。

 

关于模拟器

我是在下载的时候得知这样一个噩耗。此次发布的版本大约在8G左右,需要下载很长时间,我先下载了PublicPreview_June2010_Windows_Embedded_Compact7_ReleaseNotes先睹为快。里面写道Virtual CEPC (vCEPC) replaces Device Emulator in this release.我感觉我又回到了Windows CE 4.2的时代,在一个x86的模拟器里调试ARM的应用程序,不得不编译两次。现实确实如此,至少在这个Release,Device Emulator 是没有了。想想Device Emulator那S3C2410的CPU确实是力不从心了,我觉得微软应该再做一个S3C6410的模拟器,而不是用Virtual PC来替换这个工具。

 

正式开始

安装过程我就忽略了,因为没有Windows Embedded Standard 7 “MSSQLSERVER“那样让无数英雄折腰的大坑。先在Virtual PC跑起来再说。安装后的Visual Studio有两处变化:

 

 

在新建工程里面增加了Platform Builder 2008,不知道有谁和我一样玩植物大战僵尸吗?这就相当于双发豌豆射手升级成了机枪豌豆射手,可以直接在Visual Studio下直接开发 Compact 7了,再也不需要Visual Studio 2005了,早期的Platform Builder 2008是支持Windows Embedded CE 6.0的,这个版本我没有试验。

 

还有一处变化:

 

 

这个简直就是玉米投手升级成玉米加农炮啊,确实增强了Visual Studio的威力,不过关于Silverlight for Windows Embedded,我们以后再说,今天的主要内容是Platform Builder 2008。

 

winceroot变成了wince700。

 

 

微软直接提供了Virtual PC的BSP,CEPC暂时先不需要了。

 

 

设计模板依旧选择Enterprise Web Pad。

 

 

千万要选上Wired Local Area Network,传说中的以太网,没有这个就没办法Download Image到Virtual PC上了。还有一个蓝牙我也选上了,Windows Virtual PC是支持USB设备的,可以使用USB蓝牙。

 

 

完成向导。

 

 

还是需要在Catalog Items View里面添加一些必要的组件的。首先是BSP要为Virtual PC添加相应的驱动进去。

键盘驱动Microsoft Virtual PC和Windows 7上的Windows Virtual PC的键盘驱动是不一样的。

 

 

Application and Service Development类别下加入我们需要的API,当然这个不是必要的,MAPI(CE Messaging API),POOM(Pocket Outlook Object Model API)是新加入的,先体验一下。据说MAPI还是从Windows Phone 7里面挖过来的,为了造福广大CE的开发者,希望有一天把我朝思暮想的XNA也从Windows Phone 7里挖过来。

 

 

最大的变化还是在Shell and User Interface,新增加了一个Shell叫做Silverlight for Embedded Consumer Shell。应该是一个Demo,UI设计上和UX体验上做的很一般,当然更重要的作用是抛砖引玉,让更多的开发者在Silverlight上发挥创意。可以看到微软在新版本的CE上,非常重视Silverlight for Embedded,微软在这个release里面也提供很多XAML的应用程序,例如说基于XAML的IE7,和全新的XAML Internet 选项控制面板,另外增加了XAML Music Play,Photo Viewer,Video Player.还有基于XAML的控制面板组件。

 

 

 

设置完成后就可以Build Solution了,快捷键是F7。Build完成,依旧是生成NK.bin。Device Emulator没了,在Virtual PC上要麻烦一些。接下来需要配置Virual PC。在C:\WINCE700\platform\VirtualPC\VM目录下有cevm文件,运行就会启动Virtual PC,启动后会进入Bootloader,为了顺利的Download Image,还是需要设置一下。

 

 

在5秒的倒计时内按下空格键,会进入Bootloader的设置。和DOS下命令行式的交互操作基本一致,按下相应的数字键可进入进行相应的操作,重点在Select Boot Device,一定要选择[2]DEC21140 at PCI bus 0 dev 10 fnc 0,这个是Virtual PC的以太网卡,通过以太来下载nk.bin。

 

 

 

另外还可能根据需要来设置显示设置和网络设置,我的显示设置为800x600x32/800x480。Virual PC的分辨率是800x600x32,Windows Embedded Compact 的分辨率设置为800x480。网络设置我禁用了DHCP,我家的无线路由器是是需要手动指定IP的,我同时设置了IP是192.168.1.200,可以根据自己的网路配置进行设置。

 

 

另外还有重要的一点就是把Virtual PC的DEC21140网卡映射到主机上接入到网络的网卡。设置完成后需要重新启动Virtual PC,在启动之前,可以利用Bootloader操作7来保存配置。按0可以进行启动。

 

 

接下来需要在Target|Connectivity下添加一个设备。就命名为VCEPC吧。

 

 

在Kernel Download下面点Settings,进入Ethernet Download Settings,看这字体和控件样式居然还是WPF写的,当然启动的时候会明显的慢上几秒,为了图中的效果,不值得啊,还是用Win32吧。是启动Virtual PC的时候了,Bootloader会向DHCP请求IP地址,当然在我这不会,直接就广播BOOTME,很快就可以在Active target devices里面找到。点击Apply。在Visual Studio taget Toolbar下设置Device 为 VCEPC,点击Attach Device,就会进行下载,随后就会启动进入到Windows Embedded Compact 7。

 

 

 

最后附上几张Windows Embedded Compact 7的截图,分别是Explorer Shell和Silverlight for Embedded Consumer Shell。