以人为主的测试,到以测试用例为主的测试用例

发布新日志

  • XPE学习

    2008-02-21 16:36:21

     

     

    XPE应用程序组件开发指南

    Windows XP embedded Compoent Designer

     

     

     

     

     

     

     

     

     

     

     

     

     

    雷志刚

    2007321


      

    第一章.      描述... 1

    第二章.      组件开发实现... 2

    第三章.      总结... 10

     

    第一章.        描述

    下图中显示了Windows XP Embedded操作系统开发的工作流程:

        从图中可以看出,组件设计是作为嵌入式开发人员开发自定义组件的重要过程,以下篇幅将对如何使用组件设计器设计自定义组件作出详细描述。

         Windows XP Embedded 中包含目标设计器、组件设计器、组件数据库管理器 目标分析器几大开发工具,其中组件设计器使开发人员可以设计自定义操作系统组件,并将它们添加到运行时配置中。它还使开发人员可以将自定义应用程序添加到运行时配置中,以实现生成嵌入式系统所需要的灵活性。

        本文以MCGS组态软件为例,描述了将该组态软件制作成一个应用程序组件的详细过程。

    第二章.        组件开发实现

    初期开发的XPE操作系统,不包含MCGS的环境和关联文件,理所当然,拷贝MCGS的组态和运行环境后也不能正常运行MCGS。为了今后能够在XPE上实现拷贝MCGS的组态和运行环境后的正常运行,需要自行开发一个组件,加入到XPE系统的组件库中。

    按照以下步骤来实现该组件的开发:

    1、  打开Microsoft Windows Embedded Studio 中的 Component Designer,弹出组件设计工具画面。

    2、  新建一个组件工程,并且在 Save as 时将该组件工程命名为MCGS 5.5.sld

    3、  选中该工程下的Components子树项,右键单击,选择Add Component,新建了一个Component,可以在右边的属性页中设置名字,版本等信息。如图所示:

     

    4、  该项下包含6个子树项:

    Group Memberships:将制作好的组件发布到组件数据库中。

    Files:制作组件所需要添加的相关文件。

    Registry Data:制作组件所需要注册的文件。

    Component or Group Dependency:设置组件需要关联的其它组件和组件组。

    Build Order Dependency:制作组件关联命令。

    Resources:用于相关文件的FBA注册。

    MCGS 5.5组件的制作过程中,只涉及到前三个子项的使用。

    1选择Files项,右键选择Add Multiple Files,增加MCGS所需的关联文件,如下图(注意:增加的MCGS关联文件都是经过工具筛选好的,并不是现成的。详细的筛选过程这里就不在说明):

     

     

    这样就会将所需的关联文件添加到右侧的列表中。

    2为每个文件设置存放路径,具体路径是双击文件,弹出属性框,在Destination中选择,添加的文件中除了TDMD.sys添加到C:\WINNT\SYSTEM32\DRIVERS外,其余文件添加路径都是C:\WINNT\SYSTEM32目录下。设置完毕后注意保存。

     

                   3设置完文件路径后,就完成了Files文件的添加。下面进行注册文件的添加。

    在添加注册文件之前,首先要明确需要注册哪些注册表项,这些工作和筛选MCGS关联文件一样,都是之前选择好的,将需要注册的文件整理在一个REG文件中。为了简单起见,我们可以通过File中的Import将该注册文件导入,如下图:

     

     

     

    选择Start开始将DogDriver中的注册项导入到新组件的Registry Data中,如图所示:

    将列表中的注册文件全选后拷贝到MCGS 5.5.sld下的Registry Data中,操作过后就可以把DogDriver.sld组件项Close掉。

    4此后还需要做一个工作,因为之前添加的许多Files中有些是DllOcx的,需要进行注册操作,因而添加的Files中有一个名为MCGSFileReg.bat的批处理文件,里面完成的是用Regsvr32命令对需要注册的DllOcx进行注册,该文件我们希望它在系统启动的第一次执行一次即可,所以我们需要手动编辑一条注册表信息,放在Registry Data中。首先在当前机器注册表的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce的键值下新建一个字符串键值,名为McgsReg,速据为E:\WYJ temp files\Project\MCGS 5.5\MCGSFileReg.bat。然后在Registry Data中右键Add一个Registry Branch,将 

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce下的键值添加到右边的里表中,如图深色部分:

     

      5完成了注册文件的添加后,对于制作MCGS 5.5组件的文件添加就完成了,下面新增一个仓库(Repository),仓库作用是用来指明刚才所要添加文件所在的文件,以后该组件就会按照这个文件路径来添加所有的文件。右键RepositoriesAdd一个新的Repository,同样,在右边的属性设置框中可以填写其属性值。

    填写完属性值后,选择Source Path项,选择好刚才添加文件所在的文件夹。

    6完成后,回到MCGS 5.5 Component项,在右边的Repositories中选择刚才创建的仓库MCGS 5.5 Repository,这样就把组件和来源文件仓库关联起来了。

     

    7MCGS 5.5 Component下的Group Memberships中选择Add  Group Memberships,用来制定组件的存放目录,我们将其放在图中显示目录下:

    8最后将制作好的组件导入数据库。选择Tools中的Microsoft Component Database Manager,选中Import

    在弹出的设置框中选择组件文件,也就是MCGS 5.5.sld后开始导入。

     

    如果导入成功,会提示如下信息:

    这样我们就完成了组件的设计并添加到了数据库中。

    如何查看自己制作的组件呢?我们可以在Target Designer中来查看。

    10打开Target Designer,新建一个工程,在刚才选择的Software\Application\OEM目录下就能看见我们制作的MCGS 5.5 Component

    这样,我们在开发Windows XP Embedded的过程中,就可以引用该自定义组件了。

    第三章.        总结

    以上以制作MCGS关联组件为例,详细描述了一个自制组件的制作过程,当然这个组件的制作算不上复杂,文件筛选等许多基础工作在此之前就已准备好,实际的组件开发要复杂的多。以上文档的叙述主要是让开发人员读者树立起组件制作的概念,熟悉组件设计器的操作用法,对于实际的操作,还需要开发人员在今后的开发过程中不断积累和完善。

Open Toolbar