Share via


Troubleshooting the Hive-Based Registry (Windows CE 5.0)

Send Feedback

Possible problems include the following:

  • The build reports that any or all of these files are missing: Default.fdf, Default.hv, Boot.hv, or User.hv.

    A clean rebuild is necessary.

  • The build succeeds but it hangs soon after boot. The following list shows possible causes and solutions:

    • The Device Manager never started.

      Set Flags = 1. For more information, see Hive-based Registry Setup.

    • The Device Manager started but the necessary file system did not.

      Be sure all registry entries for that file system, block driver, and so on are in the boot registry. See driver registry settings described in the setup instructions. Also, be sure the file system driver has the flag set to load it in the first boot phase.

    • The necessary file system started but did not register as a file system containing the registry.

      See the file system driver registry settings in the setup instructions.

    • The run-time image originally did not include the hive-based registry, and a full clean build did not complete.

      Be sure you complete a clean build after including the Hive-based Registry Catalog item in your OS design.

    • Some block drivers and file system drivers will poll during their initialization, using IsAPIReady, waiting for the windowing system to be available. Because the windowing system is not started until after the registry has been fully initialized, the block driver or file system can cause a deadlock.

    • Do not let these drivers wait for the windowing system until after their initialization is complete.

  • Drivers are starting twice.

    Be sure the minimum necessary drivers are listed in the boot registry, and that the drivers which should not be started twice have the proper Flags settings stating they should be started in the first boot phase only. See the driver registry settings described in the setup instructions.

  • The target device boots but occasionally registry data is lost when the target device is powered off.

    This can happen if changes are not flushed out to the persistent file. See the description of registry flushing in the setup instructions.

  • On debug builds, for target devices that enable the KITL transport, a registry setting on the desktop that is connected to the target device can be used to turn on additional debug information.

    To enable this, set the following value in the registry of the desktop computer that is running Platform Builder.

    [HKEY_CURRENT_USER\Pegasus\Zones]
        "FileSys" = dword:20
    

    This debug zone indicates that information about the file system boot sequence should be added to the debug output collected by Platform Builder. This information is useful especially when debugging the causes of hangs during boot.

See Also

Hive-Based Registry | Using the Hive-Based Registry | Persisting Data with the Hive-Based Registry | Hive-Based Registry Data

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.