wince5.0和6.0有什么区别

WinCE6.0与5.0的区别

Windows CE6.0重新设计了Kernel,和Windows CE 5.0相比较支持的进程数从32个扩展到32000,每个进程的地址空间从32MB扩展到2GB,很多系统模块(如文件系统和设备管理器)将运行在kernel模式,OAL也从kernel独立出来,driver可以运行在kernel模式和user模式。

windows ce5.0(windows2000网页版)

Visual Studio 2005专业版将包括一个被称为Platform Builder的功能强大的插件,它是一个专门为嵌入式平台提供的“集成开发环境”。这个集成开发环境使得整个开发链融为一体,并提供了一个从设备到应用都易于使用的工具,极大地加速了设备开发的上市。

Windows Embedded CE 6.0加入了新的单元核心数据和语音组件, Windows CE 6.0大幅改变了核心定址以及资源分配的机制,旧版CE同时间只能有32个程序执行于各自分配的32MB虚拟存储器空间中,6.0版则是大幅放宽了限制,最大可同时执行32,000个程序,而且每个程序可拥有独立分配的2GB虚拟存储器,在此同时,核心服务、硬件装置的驱动程序、视窗绘图以及事件子系统、档案系统等服务都被转移到系统核心保留空间中。不过这样的改变也会带给使用者疑虑,毕竟过去NT 4.0就曾经上演过类似的戏码,将驱动程序从使用者模式转移到核心模式,虽然可以大幅改进应用的速度,但是一个体质不良的驱动程序,可能就会拖垮整个系统,因此在硬件驱动程序的开发上,就必需要有个有效标准来规范,最好还要导入如WHQL之类的驱动程序验证服务,以避免影响整个系统的稳定性。

Windows CE 6.0的新变革

Windows CE 6.0依旧把眼光投注在ARM架构中,新的BSP与编译器也都支持了ARM的最新体系,而6.0版也是微软首个导入ExFAT的操作系统, ExFAT在Windows CE 6.0中,担当了总管所有外接储存媒体的中界层的角色,广为产业界所称赞的是,这能够解除过去传统FAT档案系统的32GB单一容量限制。

ExFAT同样也解除了单一档案只能在2GB以下的限制,这对于硬件厂商以Windows CE发展大容量储存管理伺服架构,有着相当大的帮助。加上一些安全机制,我们可以把ExFAT视为Windows CE 6.0上的NTFS加强版。

windows ce5.0(windows2000网页版)

VoIP也是Windows CE 6.0另一个持续加强的重点,除了在应用程序层的整合更进一步以外,操作系统核心也具备直接支持的能力,因此硬件开发上可以更容易的在Windows CE环境上进行各种网络的语音通讯服务。而因应这样的趋势,6.0版自然也把过去5.0版的缺失补正过来,在网络堆叠协定方面,直接支持了802.11i、WAP2、802.11e(无线QoS)、蓝牙A2DP/AVRCP的AES加密等等,为无线通讯建立了一个稳定、安全以及可靠的应用环境。而从使用者观点来看,Windows CE 6.0扩展了超越以往版本总和的承诺,这些功能包括了最新的多媒体能力,诸如Windows Media 10/11的支持、,对于网络多媒体装置的原生整合能力,在Platform Builder开发工具中,甚至也加入了行动媒体中心的支持,可以藉由Windows Media Connect 2.0大幅强化多媒体应用的支持能力,并且可以与其它微软的操作系统或硬件装置做同步统合的动作。这些功能包含了以下项目:

■ TIFF编解码器的支持

■ HD-DVD的解码器支持

■ MPEG-2解码器

■更多的影音编码与格式支持

■ UDF 2.5格式的支持

■虚拟环绕声道的支持

■多轨音效的支持

■强化DirectDraw,可支持电视使用的交错显示模式

■ USB OTG功能加入,可作为USB的控制端

虽然在核心部分做出这么大的更新,但是Windows CE 6.0的储存上并没有如微软其它操作系统般的飞涨(Vista甚至需要超过10GB的初始储存安装空间!),相较起5.0版,6.0在体积上也不过增加了5%左右,虽然这对嵌入式系统产业来说是理所当然,但对于微软可以说是另一项奇迹。

Windows CE 6.0带给开发者的好处

在开放原始码的历史中,微软要写下另一个新的里程碑,100%对产品开发者释放出原始码,且可允许厂商进行自订的变更或订做,而无须释放出经过修改的程序码,虽然在广义上并不能视为真正开放,但是为这些喜欢藏私留一手的厂商来说,无疑是增加竞争力的最佳手段之一。而作为开发工具的Visual Studio 2005 PRO将会作为Windows CE 6.0的整体套件之一,内建的许多开发工具与定义对于开发者来说相对便利许多。

Windows CE 6.0支持了Windows.NET Compact Framework 2.0作为应用程序管理开发以及Win32、 MFC、 ATL、 WTL和STL等程序开发界面提供给开发原生应用程序的开发者使用。具备了如此势力庞大以及完整的开发环境作为支持,开发者与制造商也可确保后续的支持不虞匮乏。

而在硬件方面,在不变更原有的硬件架构之下,导入Windows CE 6.0可以大幅改善原有程序的执行效率,并且也容许同时间有更多程序同步执行,由于每个程序都具备有独立的执行空间,特定程序当掉,也不会影响到其它应用程序或系统执行,提供给使用者比起以往旧版系统更强的稳固性与更大的弹性。而目前逐渐风行的多核心处理架构上,Windows CE 6.0也可以在不变更程序开发者原有程序模型的状况之下,提供最佳化的核心工作自动分配与指定,当然,如果有需求的话,程序开发者依然可以自行决定指定核心的方式。

WinCE6.0 R3新特征

Windows Embedded 6.0 R3是在Windows CE 6.0 R2的基础上,增加了下列技术:

Silverlight for Embedded

Internet Explorer Embedded浏览器

Flash Lite支持

手势识别Gesture API

Connection Manager

Mobile QQ

Office Viewer

其中Internet Explorer Embedded是由Windows Embedded中国研发团队单独开发的。而Mobile QQ是由腾讯公司开发整合的。

新增了Silverlight for Windows Embedded,此项功能是 Microsoft Silverlight技术不依赖于浏览器的本机代码执行,用于为基于 Windows Embedded CE 6.0 R3的设备打造丰富的用户界面。比如,在Expression Blend下,可以更容易的进行视图开发,通过XRCustom UserControlImpl类就可以简单创建一个自定义控制,用于控制高清视图的大小、颜色和动态画面等众多的常用操作。现在原始设备制造商能够独立设备上用户体验设计和核心功能开发,通过缩短应用开发时间帮助提高上市流程效率,从而实现简化的用户界面定制,并让设计人员和开发人员能够专注于他们的核心能力。现在可以由专门的开发人员来使用Silverlight、Microsoft Expression Blend和Internet Explorer Embedded技术开发高清内容。

作为Windows 7世代的产品,他提供了与Windows 7的连通性——Windows 7 Device Stage驱动端口。并且开发者和OEM厂商还以通过Microsoft Connection Manager(微软链接管理器)实现设备和PC间的连接。同时新增的office和PDF查看器也丰富了互连体验。

Flash Lite组件的支持,使得WinCE有了播放FLASH动画和视频的能力,增强了用户体验。

如何在 Windows CE 5.0 中开发和测试设备驱动程序

本文介绍如何开发和测试 Windows CE 5.0设备驱动程序。本文循序渐进地介绍如何创建流驱动程序,如何创建自定义 Windows CE Test Kit

(CETK)测试,以及如何编写应用程序来测试驱动程序。这要花费大约 60分钟来完成。

本页内容

第一部分:建立设备驱动程序

第二部分:测试流驱动程序测试代码

第三部分:检验驱动程序

第四部分:使用

Windows CE Test Kit

第五部分:创建自定义

CETK测试

第六部分:确定谁拥有流驱动程序

小结

第一部分:建立设备驱动程序

在本练习中,您将使用 Platform Builder来添加作为设备驱动程序的项目。

在开始编写驱动程序之前,您应该了解设备驱动程序的用途。驱动程序将基础硬件从操作系统中抽象出来,使之更好地面对应用程序开发人员。应用程序开发人员无需

知道显示硬件或串行硬件的详细信息—例如,串行设备是用 Universal Asynchronous Receiver/Transmitter(UART)

实现的还是用 field-programmable gate array(FPGA)

实现的。在大多数情况下,应用程序开发人员根本不需要知道硬件是如何实现的。

Microsoft Windows为开发人员公开了调用硬件的应用程序编程接口

(API),他们不需要知道物理硬件的情况。例如,为了向串行端口写入数据,应用程序开发人员只需调用 COMx上的 CreateFile()(其中 x

表示您要打开的串行端口编号,例如 COM1代表串行端口 1),再调用 WriteFile()以将一些字节数据写入串行端口,然后调用

CloseHandle()以关闭串行端口。不管基础串行硬件是什么(也不管您运行的是哪个 Windows操作系统),API都会以同样的顺序执行。

相同的情况也适用于其他 API:如果您希望在显示表面画一条线,那么您只需调用 PolyLine()、MoveToEx()或 LineTo(

)。作为应用程序开发人员,大多数情况下您都不需要知道显示硬件的情况。此处调用的 API将返回显示表面的维数、颜色深度等等。

好消息是开发人员可以调用一个一致的、众所周知的 API集。这些 API

将他们的应用程序从基础硬件中抽象出来。这至关重要,因为应用程序开发人员无法知道应用程序是运行在便携式计算机上,还是运行在 Tablet PC

上,抑或运行在桌面计算机上。无论电脑以 1024×768还是 1600×1200

的分辨率运行,应用程序开发人员都可以在运行时查询屏幕分辨率和颜色深度,因此不需要构建只在特定硬件上运行的应用程序。

驱动程序只是一个动态链接库(DLL)。将 DLL加载到父进程地址空间;然后父进程就可以调用从该 DLL公开的任何接口。通常,父进程通过调用

LoadLibrary()或 LoadDriver()来加载驱动程序。LoadDriver不仅将 DLL加载到父进程地址空间中,而且还要确保 DLL

没有“paged out”。

调用进程如何知道从您的 DLL或驱动程序公开了哪些 API或函数呢?父进程调用 GetProcAddress(),后者可以获取函数名称和所加载的

DLL的 hInstance。如果函数存在,调用返回该函数指针;如果没有从 DLL公开该函数,则返回 NULL。

流驱动程序也公开了一个众所周知的函数集。对于流驱动程序,您会希望能够将字节流写入设备中,或者从设备中读取字节流。因此,在前面使用的串行端口示例中,您可能希望从您的驱动程序公开如下函数集:Open、Close、Read

Write。流驱动程序还公开一些其他函数:PowerUp、PowerDown、IOControl、Init

和 DeInit。

您可以将现有的操作系统映像用于模拟器平台(Basic Lab MyPlatform平台最理想)。然后,您就可以将

DLL/驱动程序项目添加到该平台了。

在构建并下载了该平台之后(这表明操作系统启动并运行良好),您需要创建您的主干驱动程序。您可以使用 File菜单上的 Platform

Builder New Project or File命令创建一个 Microsoft Windows CE DLL。创建用于公开函数或资源的

DLL与创建用作驱动程序的 DLL之间没有什么不同;唯一的不同之处在于 DLL公开哪些函数,以及如何在平台上注册或使用 DLL。

此外,一种创建国际化应用程序的方法是,首先创建包含一组核心语言字符串、对话框和资源的基本应用程序,然后创建许多外部

DLL,其中每个都包含针对特定区域设置的对话框、字符串和资源。然后,应用程序就可以在运行时加载相应的语言资源。只需要添加 DLL

文件,您就可以将语言添加到应用程序中。在 Developing International

Software一书中描述了与此相关的主题以及其他一些有趣的主题,可以在 Microsoft Press网站上获得此书。

添加一个作为设备驱动程序的项目

用 Platform Builder打开现有的 MyPlatform工作区。

在 File菜单上,单击 New Project or File。

选择 WCE Dynamic-Link Library,给它一个合适的名称(例如,StreamDrv),然后单击

OK,如下图所示。

在下图所显示的页面中多少填写一些您需要的信息,然后单击 Next。

单击 A simple Windows CE DLL project,如下图所示。

单击 Finish完成此向导。

此时,DLL只包含一个空的 DllMain

函数。您可以公开一些应用程序要调用的函数,并公开一些资源(可能使之成为识别语言/文化的应用程序的一部分),或者使之成为一个设备驱动程序。在本文中,您将使用

Windows CE Stream Driver Wizard创建您的主干流驱动程序。

在 Windows CE中,打开流驱动程序就像打开文件一样,只需根据唯一的三字母前缀(例如,COM)。

为您的驱动程序选择一个唯一的三字母标识符。在 Location

框中输入您之前创建的流驱动程序的完整路径。或者使用“browse”按钮定位到 Platform Builder安装中的 PBWorkspaces

目录,找到您前面创建的平台,然后找到流驱动程序的名称(在前面的示例中,此路径为 PBWorkspaces\TuxPlat\StreamDrv)。

在 Driver Filename框中输入驱动程序的名称。如下图所示,使用与您前面使用名称(StreamDrv)

相同的名称,以确保改写在 Platform Builder中创建的原始文件。

按 Go,将生成流驱动程序源代码。

返回页首

第二部分:测试流驱动程序测试代码

现在您已经编写了用于 Windows CE的自定义流驱动程序的基本代码。此时,驱动程序还没有与任何硬件连接。

在编写完驱动程序之后,您需要为开发人员提供一种测试它的方法。Windows CE附带了 Windows CE Test Kit

(CETK),它提供了用于各种驱动程序类型的驱动程序测试,包含网络连接、蓝牙、串行端口以及显示。您编写的驱动程序是一种自定义的流驱动程序,它没有

公开与现有的驱动程序测试一样的功能,因此您需要为该驱动程序编写一个自定义测试。虽然您完全可以编写一个应用程序来演练驱动程序,但提供一个 CETK

模块或许更好些,在开发期间可以使用此模块,并且还可以将此模块提供给客户,供他们在装配硬件上测试驱动程序。

在这一部分的练习中,您将执行以下过程:

创建主干 Tux模块

将自定义驱动程序的测试代码添加到 Tux DLL中

重新构建操作系统

设置断点

创建主干 Tux模块

在 Platform Builder中,在 File菜单上单击 New Project or File。

选择 WCE TUX Dynamic-Link Library,键入 TuxTest作为项目名称,输入一个位置,单击

Workspace Project,然后单击 OK,如下图所示。(实际上,您可以选择任意一个项目类型;对于本文,单击

Workspace Project)。

在下图显示的页面中多少填写一些您需要的信息,然后单击 Next。

阅读下图所显示的屏幕上的信息,然后单击 Next。

在最后一页上,您可以选择选取 Release Type下的

CETK,如下图所示。该选项关闭了某些二进制的优化,以提高调试工作效率。单击 Finish。

单击 View| File View,然后展开 Projects树显示 tux

源代码,如下图所示。

前图中需要注意的重要文件是:

ft.h—该文件包含 tux DLL所用的函数表。

test.cpp—该文件包含从该函数表中调用的测试过程。

TuxStreamTest.cpp—该文件包含 DLLMain和 ShellProc,后者是从 Tux.exe

调用的。

将自定义驱动程序测试代码添加到 Tux DLL中

打开源代码 Test.cpp。

使用 CodeClip来获得 Tux_Custom_Test| TuxCode源代码。

用 CodeClip中的代码替代函数 TestProc中的内容。

您会注意到,Test.cpp中的代码加载了一个名为 Demo.dll的驱动程序。对于本文,您创建了一个名为 StreamDrv

的驱动程序。您需要修改源代码以加载您的 StreamDrv.dll驱动程序。

找到 Test.cpp中调用 LoadLibrary的源代码的位置,然后将要从 Demo.dll

中加载的驱动程序的名称修改为 StreamDrv.dll。

在 Platform Builder文件视图中,右键单击 TuxTest项目,然后单击 Build Current

Project。

您还需要从该目录中添加 Windows CE Test Kit组件。

在 Device Drivers下,找到该目录中 Windows CE Test Kit组件的位置,然后选择

Add the Windows CE Test Kit,将该组件添加到您的平台中。

注将该组件添加到您的平台上并没有将任何文件添加到最后的操作系统映像中;它将 Clientside文件添加到 build release

文件夹中。您可以从 Platform Builder下载 Clientside应用程序,并在目标设备上运行该应用程序。

现在您需要重新构建您的操作系统,以便合并这些变更。

重新构建操作系统

在 Platform Builder中,选择 Build OS| Sysgen。

构建过程将会花大约 5分钟完成。

当加载驱动程序时,在流驱动程序的入口点设置一个断点来观察非常有用。

设置断点

单击 File View,打开 StreamDrv项目,然后打开 Source files。

找到并打开 StreamDrv.cpp。

找到 DllMain,然后找到并单击 switch语句。

按 F9设置断点。

单击 Target| Attach,将操作系统下载到模拟环境中。

您会看到以下调试输出,断点将启用。注意,在加载操作系统的用户接口(UI)之前,这早就发生了。

4294780036 PID:23f767b6 TID:23f767e6 0x83fa6800:>>> Loading module

streamdrv.dll at address 0x01ED0000-0x01ED5000

Loaded symbols for

'C:\WINCE500\PBWORKSPACES\DRVDEMO\RELDIR\EMULATOR_X86_DEBUG\STREAMDRV.DLL'

单击 switch语句,然后按 F9禁用断点。

按 F5,允许操作系统继续加载。

现在,您已经构建了一个 Windows CE 5.0

操作系统,它包含一个自定义流驱动程序,并且您已经在操作系统引导顺序的过程中看到了驱动程序加载。

返回页首

第三部分:检验驱动程序

在这一部分的练习中,您将执行以下过程:

使用命令行工具查看从驱动程序公开的函数

使用远程系统信息(Remote System Information)工具检验驱动程序

确定驱动程序已加载

检验您所创建的设备驱动程序的第一种方法是查看从该驱动程序公开的函数。Windows CE附带了一个名为 Dumpbin

的命令行工具,可以用于检验导入应用程序或模块的内容,或者从 DLL(或驱动程序)导出的内容。

使用命令行工具查看从驱动程序公开的函数

在 Platform Builder中,单击 Build OS| Open Release

Directory。该操作为当前的工作区打开 build release文件夹中的 Command Prompt窗口。

键入 dumpbin exports StreamDrv.dll

下图显示输出。您可以看到,所有需要的流驱动程序函数都是从驱动程序公开的;函数是从 DLL公开的(通过该项目的.def文件)。

键入 Exit关闭 Command Prompt窗口

StreamDrv.def文件的内容如下所示。

LIBRARY DemoDriver

EXPORTS

DEM_Init

DEM_Deinit

DEM_Open

DEM_Close

DEM_IOControl

DEM_PowerUp

DEM_PowerDown

DEM_Read

DEM_Write

DEM_Seek

CustomFunction

CustomFunctionEx

您可以检验驱动程序的第二种方法是通过远程系统信息工具。

通过远程系统信息工具检验驱动程序

在 Platform Builder中,单击 Tools| Remote System

Information。

选择 Windows CE Default Platform| Default Device,然后单击

OK,如下图所示。

此过程将远程系统信息应用程序连接到 Platform Builder正在使用的当前活动平台上。下图显示了结果。

您也可以使用加载模块列表来确定已加载了您的驱动程序。

确定驱动程序已加载

在 Platform Builder中,使用 Target Control窗口(gi mod)或 View|

Debug Windows| Modules and Symbols。

下图显示了此过程的结果。

返回页首

第四部分:使用 Windows CE Test Kit

Windows CE Test Kit包含设备端组件和桌面组件。设备端组件叫做 Clientside.exe,通过从目录中添加 CETK

组件,您可以将设备端组件添加到您的工作区中。注意,将 Clientside.exe

应用程序添加到工作区中并没有将任何文件添加到最终操作系统映像中,但它却将应用程序复制到 build release文件夹中。

在桌面计算机上运行 CETK之前,您需要启动设备上的 Clientside.exe应用程序。没有链接工具(比如远程工具)的原因在于,CETK

也将运行在装配(零售)设备(比如 Pocket PC)上。

在这一部分的练习中,您将执行以下过程:

检验 Windows CE Test Kit用户接口

运行一个标准测试

检验 Windows CE Test Kit用户接口

在 Platform Builder中,在 Tools菜单上单击 Windows CE Test

Kit。

这一步启动 Windows CE Test Kit应用程序,如下图所示。注意,这不是一个标准的远程工具。Windows CE

附带的大多数远程工具都使用 Kernel Independent Transport Layer

(KITL),一种将工具从基础通信硬件中抽象出来的传输,以便这些工具可以运行在以太网、串行端口、1394、USB或者其他传输上。

虽然对于 Windows CE 5.0,Windows CE Test Kit通常通过套接字连接,但是也已经更新了工具来支持 KITL。

在 Windows CE Test Kit中,单击 Connection| Start

Client。

这一步显示 Device Connection对话框,其中您可以选择是通过套接字连接还是通过 KITL连接。

确保清除了 Use Windows Sockets for the client/server communication

复选框,如下图所示。

单击 Connect。

在远程工具(KITL)的标准用户界面中,选择 Windows CE Default Platform| Default

Device,然后单击 OK,如下图所示。

该过程在目标设备上启动 Clientside.exe,并连接到目标设备上。在完成连接之后,CETK枚举目标平台上支持的设备,并禁用 CETK

中不支持的设备。

在 CETK连接到目标设备并枚举设备之后,UI如下图所示。注意,禁用了某些硬件类别,比如 Bluetooth、IR

Port和 Modem。

将自定义测试添加到 CETK中之前,您可以运行一个标准测试,以查看测试工作如何进行。

运行标准测试

在 CETK中,展开 Windows CE(x86)。

找到并展开 Serial Port。

右键单击 Serial Port Driver Test,然后单击 Quick Start。

这一步只运行了这一个测试,还没有运行所选的其他测试。UI指示测试正在进行,如下图所示。

CETK提供测试过程和测试输出的更新。您也可以在 Platform Builder中检验调试输出,以便查看测试过程,如下例所示。

405910 PID:83d4ee4a TID:83ea5a8a*** Test Name: Set event mask and wait for

thread to close comm port handle

405920 PID:83d4ee4a TID:83ea5a8a*** Test ID: 1007

405920 PID:83d4ee4a TID:83ea5a8a*** Library Path:\serdrvbvt.dll

405920 PID:83d4ee4a TID:83ea5a8a*** Command Line:

405920 PID:83d4ee4a TID:83ea5a8a*** Result: Passed

405920 PID:83d4ee4a TID:83ea5a8a*** Random Seed: 15595

405930 PID:83d4ee4a TID:83ea5a8a*** Thread Count: 1

405930 PID:83d4ee4a TID:83ea5a8a*** Execution Time: 0:00:05.110

405930 PID:83d4ee4a TID:83ea5a8a***

^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

如果 CETK UI

指示模拟器上的串行端口测试已经失败(如下图所示),那么失败可能不是由于每个测试的完全失败而导致的。它可能表明,全部测试套件只有一部分已经失败,并且这部分实际上也是期望的行为。

右键单击 Serial Port Driver Test [Failed],然后单击 View

Results。

出现如下图所示的窗口。

查看上图所示的结果,您可以看到,已经运行了 10个单独的测试。除了 Set and verify receive timeout

以外,所有这些测试都已经通过。

要获得更多信息,您可以单击个别测试。

返回页首

第五部分:创建自定义 CETK测试

通过使用 Platform Builder User-Defined Test Wizard,您可以创建一个自定义 CETK

测试。该测试将验证自定义流驱动程序(您也已经将其添加到平台中)的导出函数。

在这一部分的练习中,您将执行以下过程:

列出 CETK中的自定义流驱动程序测试

运行自定义流驱动程序测试

列出 CETK中的自定义流驱动程序测试

在 CETK中,单击 Tests| User Defined。

这一步启动 User-Defined Test Wizard。该向导的第一页只是一些信息。

单击 Next,如下图所示。

单击 Add a New Test,然后单击 Next,如下图所示。

输入下列信息,然后单击 Next:

·在 Name of Test框中键入 Custom Stream Driver Test

·在 Tux Module(DLL)框中,定位到

C:\Wince500\PBWorkspaces\MyPlatform\RelDir\Emulator_x86_Debug目录,然后选择

test.dll或 TuxTest.dll(这依赖于您在 Platform Builder中所使用的 Tux

测试的名称)。

·在 Command Line框中,保留当前测试的默认设置。

·在 Processor框中键入 x86

下图显示信息如何出现在当前的向导页中。

单击 Copy the files to the directory for user-defined tests,然后单击

Next,如下图所示。

您需要将自定义驱动程序测试(您的 DLL)复制到用户定义的测试文件夹中。如果您要删除现有的工作区,那么自定义驱动程序测试仍然保持完好。

单击 Next,如下图所示。

单击 Finish,如下图所示。

CETK应用程序不会用新的测试进行自动刷新。您需要重新同步桌面应用程序,以查看新添加的测试。

右键单击 Windows CE(x86),然后单击 Redetect Peripherals。

该过程添加了一个名为 User Tests的新驱动程序类别。您只添加了一个测试,因此,当您展开这个项目时,您只能看到 Custom

Stream Driver Test。

注已经将自定义流驱动程序测试的 DLL复制到下列位置: C:\Program Files\Windows CE Platform

Builder\5.00\CEPB\wcetk\user\x86.

运行自定义流驱动程序测试

在可用的测试列表中展开 User Tests。

右键单击 Custom Stream Driver Test,然后单击 Quick Start。

Windows CE 5.0功能介绍

微软的最新操作系统Windows CE家族成员是Windows CE 5.0,它完全兼容先前的Windows CE版本,并且在功能上有所增强。作为.NET家族的一部分,它为开发者提供了便利的工具。微软特别推出了.NET Compact Framework,这是一个针对Windows CE.NET系统的开发工具,设计目的是让已经熟悉或学习.NET技术的开发者能够轻松地在其设备上开发应用程序,无需从头开始。

针对掌上电脑的Windows CE系统,我们通常称之为Windows Mobile。当前的最新版本是Windows Phone 7.5。简单来说,Windows CE是一款专为小型电子设备,如掌上电脑,设计的操作系统。其名称中的"C"代表了袖珍、消费、通讯能力和伴侣的概念,"E"则代表电子产品,体现了其设计的初衷和定位。