PRB: Can Not Initialize the Debugging Subsystem

This article has been archived. It is offered "as is" and will no longer be updated.
Symptoms
Attempting to debug a Windows CE 2.1 application using the CE Shell utilitywith the Developer Studio IDE debugger causes the following error:
Cannot Initialize the Debugging System
Cause
The debugger can not communicate with the Cemon.exe process on the targetdevice.
Resolution
When using the IDE to debug through the CE Shell utility, the IDE verifiesand downloads the application and the Cemon.exe module to the targetdevice, and starts them. The IDE then communicates with the Cemon.exeprocess via a TCP/IP connection. This additional connection is requiredregardless of the connection type being used for the CE Shell utility.

To determine the cause of the problem, troubleshoot your system by usingthese steps:

  1. Ensure that the system's _FLATRELEASEDIR environment variable is pointing to the release directory that contains the operating system files. The CE Shell utility must use the same directory.
  2. Ensure that there is plenty of disk space on the disk volume containing the _FLATRELEASEDIR directory. The application and Cemon.exe must be copied into this directory in order for the debug session to beestablished.
  3. Ensure that the CE Shell connection is up. The command window thatcontains the CE Shell utility session should be showing Windows CE> ifa connection has been established. If this is not working, some possibleproblems are:

    • Bad, incorrect, or loose cable.
    • Cable on wrong port.
    • Incorrect or misconfigured target device hardware.
    • Incorrect CE Shell command line.

    See the online documentation for proper configuration of hardware anduse of the CE Shell command line.
  4. Ensure the CE Shell utility is communicating properly with the target device. This can be done by executing a simple command that requires communications with the target device. An example is gi proc, which lists all of the running processes on the target device. If the command does not return a response, then you may have one of the following problems:

    • Bad or loose cabling.
    • Operating system hang.


    The demonstration operating system projects should operate reliably. If you experience operating system hangs on your own project, use the kernel debugging tools to resolve the problem before using the IDE debugger.
  5. Verify that the CE Shell utility is referencing the release directory correctly. This can be done by verifying that Cemon.exe is in the release directory, then running Cemon.exe from the CE Shell with the following command line: s cemon.exe. If this runs successfully, kill the process before continuing. If this fails, double-check all of the preceding steps.

    1. For Serial TCP/IP Connection: Ensure that a Remote Networking connection has been established. If this connection is established, the target device will have a "Connected to..." program window for the connection showing "Connected" status. With shell-enabled samples, you can press CTRL+ESC on the target device to get a list of program windows. If you can not establish a connection, it may be due to one of the following problems:

      • Bad, incorrect, or loose cable.
      • Cable on wrong port.
      • Incorrect or misconfigured hardware (target or device).
      • Incorrect Remote Networking parameters.
      • Incorrect Windows CE Services parameters.

    2. For Ethernet TCP/IP Connection:Ensure that the target device and host can communicate by attaching via the Windows CE Network Redirector or one of the sample client/server TCP/IP programs. If you can not establish a connection, it may be due to one of the following problems:

      • Cable on wrong adapter.
      • Incorrect or misconfigured hardware (target or device).
      • Incorrect TCP/IP parameters.
      • General network failure.
  6. For ethernet, ensure that the following registry key contains the name of the host machine:
    [HKEY_CURRENT_USER]\Software\Microsoft\Cemon
  7. Ensure that Cemon.exe is not already running on the target device. By executing the gi proc command from the CE Shell utility, you can determine whether Cemon.exe is running; it should not be running when a debugger session has not been established. If Cemon.exe is running, use the kp command to kill the process(s).
If all of these items verify correct, the IDE should be able to establish adebugging session.
Status
This behavior is by design.
Properties

Article ID: 193512 - Last Review: 01/09/2015 14:06:26 - Revision: 2.0

  • kbnosurvey kbarchive kbide kbprb KB193512
Feedback