Configuring the Process Boot Phase (Windows CE 5.0)
When you finish adapting your OAL, you can set the system registry for your OAL. When Windows CE begins loading, the kernel starts the file system and examines the HKEY_LOCAL_MACHINE\Init registry key to identify what applications to run.
Although you determine which applications the OS loads, most include the following applications:
- Debug shell (Shell.exe)
Shell.exe communicates with the Target Control service running on your development workstation. Include only Shell.exe in your run-time image for debugging and development. Shell.exe displays the Windows CE prompt in the command prompt build window after you use Target Control to transfer the Windows CE run-time image.
- Device Manager (Device.exe)
- Graphics, Windowing, and Events Subsystem (Gwes.exe)
Gwes.exe also loads and initializes input device drivers such as the keyboard driver and the touch driver.
- Task Manager (Taskman.exe)
To control which applications run at system startup, create launch registry values. Launch registry values do not need to be sorted in the registry, although you can specify dependencies. You can specify up to 32 applications.
The following table shows the entries for the HKEY_LOCAL_MACHINE\Init registry key.
|Dependnn||hex:xx,yy[,xx,yy]||REG_BINARY (yy is the most significant bit)|
Launch registry values have optional dependencies as denoted by the Dependnn registry value.
Dependnn registry values specify applications that Windows CE must be running before the Launchnn applications run.
Dependnn registry values begin with the keyword Depend, followed by the same decimal number as the Launchnn registry value.
The Dependnn registry values define an order in which Windows CE launches applications. One or more dependent applications can be specified per Dependnn value. Dependent applications are specified as a series of Words in hexadecimal notation.
The following code example shows a typical Init registry entry using dependencies.
[HKEY_LOCAL_MACHINE\Init] "Launch10"="shell.exe" "Launch20"="device.exe" "Launch30"="gwes.exe" "Depend30"=hex:14,00 "Launch50"="taskman.exe" "Depend50"=hex:14,00, 1e,00
In the preceding example, Gwes.exe is dependent on Device.exe starting and Taskman.exe is dependent on Device.exe and Gwes.exe starting.
After Windows CE calls an application using the Init registry value, the application must call the SignalStarted function.
SignalStarted indicates that the application is ready for the rest of the OS to continue processing. The value that is passed as the parameter to SignalStarted is the value passed on the command line of the application started from the Init key. For more information about the format of the registry, see Registry File.
Send Feedback on this topic to the authors