一种快捷简便的WIN CE界面定制方法

 

 

一种快捷简便的WIN CE界面定制方法

提供一个自己定制Windows CE UI 的大体思路:
1、在Catalog Item View里面把Core OS - CEBASE - Shell and User Interface - Shell - Graphical Shell 下面的 Standard Shell去掉。
2、在项目解决方案资源管理器里把OS Design新增加一个子项目,比如起名叫:MyDeskTop。
3、在OS Design的project.reg中,新增加如下注册表键:


[HKEY_LOCAL_MACHINE/Init]
"Launch50"="MyDesktop.exe"
"Depend50"=hex:14,00,1e,00


其中的Depend50是可选项,代表该模块依赖一些别的模块,被依赖的模块若加载不成功,则该模块也不会被加载。至于这些被依赖项的HEX值,可以查看对应Common.reg文件下的定义。
另外还有多个可选选项,具体意义可以参考这篇文章:http://msdn.microsoft.com/en-us/library/aa448482.aspx
4、这时子项目MyDesktop可以作为一个UI来使用,具体采用什么开发技术,可以有WIN32 SDK,MFC,GDI,DirectX等等多种技术组合,就看各人喜好了。

Configuring a Registry File to Run an Application at Startup

 

You can configure a registry (.reg) file to run a module when your run-time image starts up. There are two ways to configure registry files:

  • Modify the registry file before building and downloading the run-time image.
  • Use the Remote Registry Editor after downloading the run-time image to the device.

    Using the Remote Registry Editor changes the run-time image registry, but the changes are not persisted to the registry files in Platform Builder. The next time you download the run-time image, you must configure the registry again.

    For more information, see Remote Registry Editor.

To modify a registry file in the IDE

  1. From the Workspace window, choose the ParameterView tab at the bottom of the window.
  2. Expand the nodes until you find the folder for the target device you have chosen.

    For example, if you create an OS design for the Emulator, find the Emulator folder.

  3. Expand the folder and then expand the Project Specific Files folder.
  4. Select and open the appropriate registry file.

    Typically, this is the Project.reg file. Settings in Project.reg override other registry settings due to the order in which the build system processes the registry files.

  5. Update or add the HKEY_LOCAL_MACHINE/Init section of the registry file with the following code.
    [HKEY_LOCAL_MACHINE/Init]
    "launchnn"="defined_module_name"
    "dependnn"=hex:xx,yy...
    

    The following table shows descriptions of the parameters in the code you must update or add to the HKEY_LOCAL_MACHINE/Init section of the registry file.

    ParameterDescription
    launchnnDefines the order that the module is started in, where nn is 00–99.

    Enclose this parameter in double quotation marks (" ").

    defined_module_nameSpecifies the name of the module to be started.

    Enclose this parameter in double quotation marks (" ").

    dependnnOptional. Assigns a dependency that prevents the defined module from starting until another module is started, where nnis 00–99.

    Enclose this parameter in double quotation marks (" ").

    hex:xx,yy...Defines the hexadecimal number of the module that must be run before the defined module is run.

    This parameter consists of the hex keyword, a colon, and one or more hexadecimal numbers, one for each byte of hexadecimal data.

    After your run-time image calls a module using the Init registry value, the application must call the SignalStarted function.

    SignalStarted indicates that the module is ready for the rest of the OS to continue processing.

    The value passed as the parameter to SignalStarted is the value passed on the command line of the module started from the Init key.

  6. If you do not know the hexadecimal numbers for the module dependencies that your application requires, open and search Common.reg for the module names.

    The following code example shows how to set your module to depend on the standard initialization modules, which include Filesys.exe, Gwes.exe, Device.exe, and Explorer.exe.

    [HKEY_LOCAL_MACHINE/Init]
    "launchnn"="defined_exe_name"
    "dependnn"=hex:0A,00,14,00,1E,00,32,00
    
  7. Save and close the registry file.

You have successfully modified a registry file to run a module at startup.

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值