`
mmdev
  • 浏览: 13301519 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

Windows CE开发之起步停车

阅读更多

Windows CE开发之起步停车

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

最近一段时间,移动设备开发越来越多的成为了程序员社区的话题。移动设备主要包括智能手机和PDA,是嵌入式开发中很重要的一个方向。在智能手机领域被大多数手机厂商支持的J2ME无疑是领头羊,随着多普达推出了515手机,基于微软CE平台的SmartPhone也逐渐成为关注焦点。一直不温不火的PDA市场,也在行业应用领域有所收获,Pocket PC由于其开发与Windows平台的一致性而得到了开发人员的青睐。

在长期关注程序员论坛的过程中,我发现由于Windows CE开发的独特性,加之多个版本并存、缺乏中文参考资料,所以论坛上充斥着大量相同的入门问题。我希望在这里能够为刚转入Windows CE开发的程序员明晰一些概念,将现有的Windows CE版本与开发工具之间的关系给大家解释清楚,在最后介绍一下,关于Windows CE开发的中文书籍和国外网站的情况。

Windows CE与平台开发

Windows CE是微软为嵌入式设备打造的操作系统,而嵌入式设备可谓多种多样,这就要求CE操作系统必须是可定制的,所以微软将Windows CE设计为模块化的操作系统。说简单点,我们可以把Windows CE想像成一盒积木,你可以用积木搭建出任何物体,但不一定要把所有的积木都用上。

Windows CE搭建出来的物体就是平台,是适应某种有固定标准的嵌入式设备的操作系统子集,最著名的平台就是Pocket PC了,是提供给没有键盘的掌上电脑使用的平台。由于平台和硬件的一致性,所以有时候我们也用平台的名称来称呼整个系统——硬件与操作系统的总和。

我们也可以自己开发平台,开发工具是微软提供的Platform BuilderPlatform Builder的版本号是和Windows CE的版本号一致的。

更多程序员关心的是应用程序的开发,而应用程序开发是针对特定平台的,我们在开发之前必须安装目标平台的SDK,才能够开发出适应目标平台的开发工具。

Windows CE开发环境综述

初学者另外一个比较糊涂的概念是版本的问题,现在市面上能够见到Windows CE的两代产品,它们的内核分别基于Windows CE 3.0Windows CE.NET(即4.0)。

微软将今年刚面世的Pocket PC 2003Smart Phone 2003统称为Windows Mobile 2003,我们大多数时候还是习惯地沿用老称谓。

而市面上经常见到的Pocket PC 2002是基于Windows CE 3.0的平台,而Pocket PC 2003则是基于Windows CE.NET的平台,需要注意的是,Pocket PC 2003的内核是Windows CE.NET 4.2。而SmartPhone2003也是基于Windows CE.NET的。SmartPhone的最初版本是2002,基于Windows CE 3.0的,但是微软没有推出SmartPhone2002的中文版。

清晰了平台与CE之间的关系,解释平台与开发工具之间的关系就很容易了。微软提供给应用程序开发者的工具包括:Embedded Visual Tools 3.0,其中包括Embedded Visual C++ 3.0Embedded Visual Basic 3.0Embedded Visual C++ 4.0Visual Studio.NET

开发工具的版本号是与Windows CE的版本号对应的。EVC3.0EVB3.0是用来开发基于Windows CE 3.0平台的应用程序的,比较常见的平台有:Pocket PC 2002Pocket PC 2000Palm-size PCHPC。而EVC4.0是用来开发Windows CE.NET平台的程序的,主要包括Pocket PC 2003SmartPhone 2003

Visual Studio.NET针对嵌入式设备开发需要SDE的支持,而VS.NET 2003中包括了SDE,不需要另外安装。Visual Studio.NET开发的程序需要目标平台支持.NET Compact Framework。现在支持.NET Compact Framework的平台有Pocket PC 2002Pocket PC 2003。这里需要注意的是SmartPhone 2003是不支持.NET Compact Framework的。

EVB开发入门

微软已经宣布EVB不再支持Windows CE.NET,所以EVB的最终版本是3.0。但由于EVB的易上手性和快速开发的特点,在VS.NET横空出世之前,它成为Windows CE平台上快速开发的不二之选。现在EVB仍然适合Windows CE 3.0平台上小型应用程序的快速开发。如果您不是专职的Windows CE程序员,而只是需要在Windows CE平台上开发整个系统的一部分,那么EVB可以让您用很短的时间开发出您想要的程序。

EVB的开发环境的搭建也是十分简单,您可以从微软的网站上下载EVT 2002,其中包含了EVC 3.0EVB 3.0Pocket PC 2002 SDKSmartPhone 2002 SDK。按照提示将EVBPocket PC 2002 SDK安装好后就可以进行开发了。SDK中包含模拟器,在没有实际设备的情况下,可以利用模拟器来调试程序。

这里需要注意的是,开发环境和模拟器之间是通过网络连接协议进行通讯的,所以开发所用的计算机上必须有一个活动的网络连接。如果没有,可以安装微软的虚拟网卡,具体过程请参照我在CSDN专栏里的文章《在无网络的环境下使用模拟器》。

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 306pt; HEIGHT: 102pt" type="#_x0000_t75"><img o:title="evb" src="/Develop/ArticleImages/24/24725/CSDN_Dev_Image_2004-2-231725280.jpg"><font size="3"></font></shape>

EVB的开发环境与VB类似,因为Windows CE应用程序需要在模拟器或者实际设备上调试,所以我们必须选择程序的输出目标。如果您选择了Emulation,在您按下运行(或F5)后,EVB将自动启动模拟器,并把程序下载到模拟器中。

由于新的Windows CE.NET将不再支持EVB,微软建议EVB程序员使用VB.NET开发新的程序,而对于原有的EVB程序也给出了迁移路径,关于这方面的论述,您可以参考MSDN的文章《Moving from eMbedded Visual Basic to Visual Basic .NET》。

EVC开发入门

无论是Win32平台还是WinCE平台,Visual C++都是一个强大的开发工具。而EVC也是WinCE上的主流开发工具。EVC支持MFC类库的子集,可以给开发者提供最强大的支持,也使Win32平台上的VC程序员可以很容易地迁移到WinCE平台上。但由于MFC类库需要一个DLL,所以对某些存储空间有限的嵌入式设备来说,这是个很大的负担,所以SmartPhone就不支持MFC

<shape id="_x0000_i1029" style="WIDTH: 315pt; HEIGHT: 201.75pt" type="#_x0000_t75"><img o:title="evc" src="/Develop/ArticleImages/24/24725/CSDN_Dev_Image_2004-2-231725282.jpg"><font size="3"></font></shape>

说这么多,让我们来创建一个EVC的工程。是不是和VC很像,需要提醒大家注意的是,由于嵌入式设备支持的CPU种类很多,我们在选择创建工程类型的同时,也要把该工程所支持的CPU类型选择好。创建工程的过程和VC是一样的。当然不同的平台支持的工程类型是不同的,比如Pocket PC 2003有支持MFCAPI的两种工程,而SmartPhone 2003则只有支持API的一种工程。

<shape id="_x0000_i1030" style="WIDTH: 431.25pt; HEIGHT: 62.25pt" type="#_x0000_t75"><img o:title="evc2" src="/Develop/ArticleImages/24/24725/CSDN_Dev_Image_2004-2-231725284.jpg"></shape>

EVC中比VC环境中多了一行下拉菜单的选项,分别用来选择:工程、SDKCPU类型和输出设备。以Pocket PC为例,在实际设备上调试应该选择Win32(WCE ARMV4)Debug ,而在模拟器上则需要选择Win32(WCE emulator)Debug

VS.net开发入门

又来到我们的.NET时间了,我怎么说又?最近大家都被JAVA.NET搞得头昏脑胀了吧?不管大家怎么吵,.NET Compact Framework对于手中缺少开发利器的嵌入式程序员无疑是一大福音。Visual Studio .NET 2003完全支持对移动设备的开发,好了,让我们开始一段奇幻的.NET之旅吧。

<shape id="_x0000_i1026" style="WIDTH: 333pt; HEIGHT: 243pt" type="#_x0000_t75"><img o:title="net1" src="/Develop/ArticleImages/24/24725/CSDN_Dev_Image_2004-2-231725286.jpg"><font size="3"></font></shape>

打开VS.net 2003,选File - New – Project,就打开了上面的界面。让我们来建立一个Visual C#的工程,然后选择Smart Device Application,然后OK

<shape id="_x0000_i1027" style="WIDTH: 342pt; HEIGHT: 238.5pt" type="#_x0000_t75"><img o:title="net2" src="/Develop/ArticleImages/24/24725/CSDN_Dev_Image_2004-2-231725288.jpg"><font size="3"></font></shape>

你在这里要选择目标设备:Pocket PCSmartPhoneWindows CE(指的是其他平台),下面则是选择创建的工程类型,我们选择“Windows Application”,左边是选择的平台所支持的模拟器。最后点击OK,我们就可以进入VS.NET的主界面了。

选择输出设备的情况和EVB十分类似,只需要选择输出设备,而不用选择CPU类型。当然了,因为.NET是运行在虚拟机上的了。在CPU类型众多的嵌入式领域,.NETJAVA才能真正发挥自己的强项。

<shape id="_x0000_i1028" style="WIDTH: 423pt; HEIGHT: 152.25pt" type="#_x0000_t75"><img o:title="net3" src="/Develop/ArticleImages/24/24725/CSDN_Dev_Image_2004-2-2317252810.jpg"><font size="3"></font></shape>

当然,我们也可以选择VB.NET作为开发智能设备的语言,情况和C#完全一样。目前智能设备开发只支持C# VB.NET。爱好C++的程序员可能还要等上一段时间。
分享到:
评论

相关推荐

    Windows CE开发指南

    《Windows CE开发指南》是一本专注于Windows CE操作系统开发的实用手册,主要针对Windows CE .NET版本。这本书通过一系列实践操作,旨在帮助读者了解并掌握Windows CE .NET的主要特性。通过实际动手操作,开发者可以...

    windows ce 开发教程

    ### Windows CE 开发教程知识点概览 #### 一、Windows CE 概述与特性 - **Windows CE**:是一款由微软公司开发的操作系统,专为嵌入式设备设计。它支持多种类型的处理器,并且拥有类似于桌面操作系统的特性,如多...

    Windows CE 开发初步(第一部)

    《Windows CE 开发初步》是针对初学者的一份详尽指南,主要涵盖了Windows CE操作系统的基础开发知识。Windows CE,全称“Windows ...这份资料将帮助你开启Windows CE开发之旅,探索这个强大的嵌入式操作系统的世界。

    Windows CE开发入门

    《Windows CE开发入门详解》 Windows CE是一种专为嵌入式设备设计的操作系统,它具有小巧、可定制、高效等特点,广泛应用于各种工业控制、移动设备、消费电子等领域。本篇将详细介绍Windows CE的开发流程及关键概念...

    Windows CE的开发工具包

    ### Windows CE的开发工具包知识点概述 #### 一、Windows CE简介 - **定义与特点**:Windows CE是一种由微软公司开发的操作系统,专为移动设备设计,如掌上电脑等。它支持多种处理器架构,如ARM、MIPS、PowerPC等。...

    WINDOWS CE实用开发技术.zip.001

    《WINDOWS+CE实用开发技术》完整版电子书pdf版 该书主要涉及WinCE下的驱动开发技术 压缩文件分三部分 需下载完全才能解压: WINDOWS CE实用开发技术.zip.001 WINDOWS CE实用开发技术.zip.002 WINDOWS CE实用开发技术...

    基于Windows CE系统嵌入式开发教程

    第2章 ARM基础开发 第3章 开发工具EVC的使用 第4章 Windows CE窗口和消息机制 ...第12章 Windows CE底层开发 第13章 Windows CE下的驱动开发 第13章 Windows CE下的驱动开发 第15章 Windows CE下的调试连接

    使用visual studio开发windows ce程序

    2. **Embedded Visual C++ 4.0**:虽然这款工具已经被淘汰,但它曾经是开发Windows CE原生应用程序的主要工具之一。它主要支持C++语言,并且包含了一些特定于Windows CE的功能。 3. **Visual Studio .NET 2003**:...

    Windows CE高级开发指南

    《Windows CE高级开发指南》是一本深入探讨Windows CE操作系统开发技术的专业书籍,旨在帮助开发者掌握在Windows CE平台上进行高效、灵活的应用程序设计和系统构建。Windows CE是一个微内核的操作系统,广泛应用于...

    Windows CE 开发初步(第一部)

    《Windows CE 开发初步》是针对嵌入式系统开发者的一部入门教程,主要涵盖了Windows CE操作系统的基础知识,以及如何在该平台上进行应用开发。Windows CE是一个面向小型设备的操作系统,常用于掌上电脑、工业控制...

    WindowsCE6.0开发环境搭设及内核配置和应用开发

    Windows CE 6.0 开发环境搭设及内核配置和应用开发 Windows CE 是一种实时操作系统,广泛应用于嵌入式系统中。为了满足不同的应用需求,Windows CE 提供了高度可定制的特性,允许开发者根据实际需求对系统进行裁剪...

    Windows+CE开发指南

    《Windows CE开发指南》 Windows CE,全称Windows Embedded Compact,是微软公司推出的一个嵌入式操作系统,主要用于掌上设备、工业控制设备以及各种智能硬件。Windows CE以其灵活性、可定制性和高性能,成为了...

    Windows ce的一本非常好的教程,详细介绍了开发过程WinCE_eBook

    《WinCE_eBook》是一本专注于Windows CE开发的权威教程,涵盖了从基础知识到高级应用的全方位内容。Windows CE是一款微软公司开发的嵌入式操作系统,广泛应用于各种智能设备和工业控制系统。通过本教程,读者可以...

    Windows CE开发集合及源码

    这个“Windows CE开发集合及源码”资源包显然包含了与Windows CE开发相关的多种材料,包括源代码、开发工具和文档。 首先,我们来探讨Windows CE的开发环境。开发者通常会使用Visual Studio或Platform Builder来...

    Windows CE开发初步

    许多开发人员都尝试了基于无线装置的软件编程,然而这些思想达于成功的关键之处在于他们能否深 入了解Windows CE 的功能和缺点。 本文就此介绍了Windows CE 的一些基本特性,并指出过渡到基于无线装置的软件开发所应...

    windows ce开发初步

    《Windows CE开发初步》 Windows CE,全称“Windows Embedded Compact”,是微软公司推出的一款面向嵌入式系统的实时操作系统。Windows CE为各种设备提供了一个可裁剪、可扩展的平台,广泛应用于工业控制、移动设备...

    Windows CE系统开发概要(ppt)

    Windows CE系统开发概要主要涵盖了选择Windows Embedded操作系统、Windows CE平台开发周期以及应用开发选项等关键知识点。在开发基于Windows CE的系统时,这些要素构成了整个流程的基础。 首先,选择Windows ...

    Windows CE 开发的忠告

    在Windows CE开发的世界里,有许多值得开发者关注的要点和技巧,尤其对于新手来说,了解这些忠告至关重要。Windows CE,全称是Windows Embedded Compact,是一个轻量级的操作系统,广泛应用于移动设备、嵌入式系统和...

    WINDOWS CE实用开发技术pdf.part2.rar

    WINDOWS CE实用开发技术pdf.part2.rar 共五卷 很好的书关于wince ce5.0的

Global site tag (gtag.js) - Google Analytics