none
lzg_ad:如何自定义Shell组件 RRS feed

  • 常规讨论

  • Windows XP Embedded 中的组件开发通常分为以下几类:

    1. 设备驱动程序组件开发;

    2. 应用程序组件开发;

    3. 自定义壳程序组件开发;

    4. 其他组件开发;

     

    本贴主要介绍了如何自定义Shell组件。

     

    XPE自带的壳程序有:Explorer shell, Command shell, 和 Task Manager shell。

    你可以使用自己开发的应用程序创建一个自定义的壳组件,在操作系统启动时引导。


    创建自定义壳组件请按照以下步骤进行:
    1.在组件设计器中(Component Designer),打开菜单File->New,创建一个新的组件文件;
    2.打开左试图节点,在Components上单击右键,并且选择Add Component;
    3.在属性面板中,输入组件的以下相关属性信息:
    Name(组件名称)
    Description(组件描述,可以不输)
    Prototype component(组件属性,设置这一项的时候,选择Browse,在Select Prototype Component对话框中,搜索Shell prototype component,并且选择OK。这一步将把你所做的组件设置为壳组件)
    4.在属性面板中,选择Advanced;
    5.在Advanced Properties 对话框中,选择Add;
    6.在Extended Property对话框中,提供以下信息:

    Name: cmiShellPath
    Format: String
    Value: 壳应用程序的的路径和名称,使用系统预定义的环境变量;
    例如:你的应用程序放在C:\Windows\System32\shell.exe,那么这一项将填入%SystemRoot%\System32\shell.exe W>Yb[f4B$  
    需要了解更多的系统预定义的环境变量,请查阅MSDN。
    7.选择OK应用你设置完成的 Advanced Properties 对话框;
    8.选择OK;
    9.如果想要把你的壳组件添加到以来检查的组中,在SLD Browser,在你的组件上右键Group Memberships,并且选择Add Group Membership
    10.在Add Component Group Memberships 对话框中,展开Dependencies节点,并且选择Shell组,点击OK;
    11.如果想要把你的Shell Component加入到某个组中,在SLD Browser,在你的组件上右键点击Group Memberships,并且选择Add Group Membership;
    12.在Add Component Group Memberships 对话框中,展开Categories 节点,指向Software\System\User Interface\Shells,并且选择OK;
    13.保存.sld文件,并且将做好的组件导入到数据库中,组件制作完成。

    2008年1月9日 5:29
    版主

全部回复

  • 班主,我按照您上面的步骤做了个shell组件,但是在系统起来之后应用程序没有运行起来,只有一块蓝屏。我的应用程序是拷了一个fetion2008.EXE文件,放在D:\WINDOWS\system32 下,value 值设置为%SystemRoot%\System32 \fetion2008.EXE,请问这样做是不是有什么地方不对? fetion2008.EXE 在xp下是可以正常安装的。

    2008年7月23日 7:17
  • 估计是你的应用程序需要一些支持的库文件,而你没有添加完整造成的。

    建议你先在做好的标准XPE上安装运行,确定需要的库文件支持和确保可以正常运行后再做成壳组件。

    2008年7月24日 2:17
    版主
  • 为了能让更多人看到并学习,希望大家在看完帖之后,记得回帖!谢谢

    2008年10月22日 2:55
    版主