Share via


Using the WinInet Debug Engine (Windows CE 5.0)

Send Feedback

WinInet includes a debug engine that you can use to configure the debug output for WinInet. This engine is supported by the WinInet shell extension. To use the debug engine, you must load the shell extension, configure the control options, and then restart WinInet.

Assumption: You have a debug build of your run-time image on your target device.

To load the shell extension, type the following command in the command prompt of the shell window on your target device.

loadext wininet

After the shell extension is loaded you can use the debug controls for WinInet. The wininet prefix specifies controls for WinInet. To see the supported controls, type the following command at the command prompt of the shell window.

wininet

The following table shows the supported debug controls with a description of the purpose of each.

Debug control Description
Err Specifies the error control flags.
Ctl Specifies the control flags and the control debug output.
Cat Specifies debug categories.
Break Breaks into the debugger.
Indent Specifies the indent for the debug output.
File Specifies the file name to which the debug output is redirected. This control is used only if DBG_TO_FILE is set in control flags.

To see the current settings for the debug control, type the following command at the command prompt of your shell window.

wininet <Debug Control>

To set a value for the debug control, type the following command at the command prompt of your shell window.

wininet <Debug Control> <FlagValue>

You can configure the debug control options by using the registry. For more information about these registry settings, see WinInet Debug Engine Settings in WinInet Registry Settings.

Err

This debug control is used to specify the error control flags. The following list shows the possible flag values for the Err debug control.

  • 0x0 - None
  • 0x1 - Information
  • 0x4 - Error
  • 0x5 - All

Ctl

This debug control is used to configure the debug output. The following table shows the possible flag values for Ctl. Each value is a bit in 32-bit or 4-Byte DWORD. Each row has four values and two rows cover 1 byte. Some of these are marked as Reserved.

Control flag Description
Thread Info (0x00000001) Prints thread information.
Call Depth (0x00000002) Prints call depth.
Entry Time (0x00000004) Prints the entry time.
Parameter List (0x00000008) Prints the parameter list.
To Debugger (0x00000010) Sends output to the debugger.
To File (0x00000040) Redirects the debug output to a file.
Flush Output (0x00000080) If output is directed to a file, flushes the file after each debug statement
Indent Debug (0x00000100) Indents the output, to view call stacks easily.
Line After API (0x00000200) Inserts an empty line after an API call.
Break On Assert (0x00000800) Breaks on Assert.
Length Info (0x00001000) Adds length information while sending data.
No Line Number (0x00002000) Inserts line numbers in the file that contains the debug statement.
Append To File (0x00004000) Appends the debug output to an existing file.
Level Indicator (0x00008000) Reserved.
At API Level (0x00010000) Sends API-specific data.
Delta Time (0x00020000) Sends length of time in this thread.
Cumulative Time (0x00040000) Sends length of time since loading WinInet.
Thread Info Addr (0x00100000) Sends address of thread information structure.
Async ID (0x00400000) Sends the asynchronous identifier.
Request Handle (0x00800000) Sends the request handle.
Trigger On (0x10000000) Enables the trigger.
Trigger Off (0x20000000) Disables the trigger.
Data Dump Off (0x40000000) Disables sending data.
No Debug output 0x80000000 Disables debug output.

Cat

This debug control is used to toggle WinInet functionalities based on your requirements. The following list shows the possible flag values for the Cat debug control that specify debug categories.

  • 0x00000001 - Inet
  • 0x00000002 - Ftp
  • 0x00000008 - Http
  • 0x00000010 - Api
  • 0x00000020 - Util
  • 0x00000040 - Unicode
  • 0x00000080 - Worker
  • 0x00000100 - Handle
  • 0x00000200 - Session
  • 0x00000400 - Sockets
  • 0x00004000 - MemAlloc
  • 0x00008000 - Serialized List
  • 0x00010000 - Thread Info
  • 0x00020000 - Protocol
  • 0x00040000 - DLL
  • 0x00080000 - Reference Count
  • 0x00100000 - Registry
  • 0x00200000 - Trace Sockets
  • 0x00400000 - Async
  • 0x00800000 - Cache
  • 0x01000000 - Invalid Handles
  • 0x02000000 - Objects
  • 0x04000000 - Proxy
  • 0x08000000 - Resource Lock
  • 0x10000000 - Dialup
  • 0x20000000 - Global
  • 0x40000000 - Authentication

Break

This debug control is used to break into the debugger. The values for this control are the same as those listed for the Cat debug control.

Indent

This debug control is used to specify the length of indentation spaces for lines in the same thread.

File

This debug control is used to specify the name of the file to which the debug output is redirected.

See Also

WinInet OS Design Development | Windows Internet Services (WinInet)

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.