Implementing Console Applications

A Windows CE shell may include a command line processor to provide console application support. While the command line processor does not include a graphical user interface, you can still use the standard C library I/O functions to read and write characters to and from the command line. The command line processor shell also supports I/O redirection by using less than (<) or greater than (>), as well as a double greater than (>>) to append. However, the command line processor shell does not currently support pipes. The following table shows the keystrokes that the Command Processor supports.

Command
Keystroke
Cancel CTRL+C
One line history F3 or the UP ARROW key
Pause CTRL+S
Resume CTRL+Q

Although the command line processor does not support batch (.bat) files, you can enable batchlike support by creating a file with a list of commands and launching the command line processor with the following command line:

start cmd < cmd_list.bat

A Windows CE-based console application also has full access to the Win32 API. In fact, a console application can create windows, enter a message loop, and operate similar to a standard Windows–based application. The difference is that the first time you call one of the standard I/O C library functions, such as printf, Windows CE creates a console window that displays the result of that function.

Consoles are implemented in Windows CE using a console driver with the device name of CON. No more than ten console windows can be opened simultaneously.