PRB: The Taskbar Disappears After a Windows CE Terminal Services Client Session is Ended (825072)



The information in this article applies to:

  • Microsoft Windows CE .NET 4.2

SYMPTOMS

The Windows CE taskbar may disappear after a Windows CE Terminal Services Client (CETSC) session is ended unexpectedly.

CAUSE

Although other scenarios may cause this behavior, this problem typically occurs because of lack of program memory.

Specifically, when a CETSC session starts and runs in full-screen mode, the session uses the ShowWindow(hWnd,SW_HIDE) function to hide the taskbar. However, if the client session is ended unexpectedly, the client session might not regain control to use ShowWindow(hWnd,SW_SHOW) to restore the Windows CE taskbar to a visible state.

One likely reason for the session to end unexpectedly is that the system is low on program memory. When this low-memory condition occurs, a dialog box informs the user to close some applications or to increase program memory.

When the user closes the Low on Program Memory dialog box, the CETSC session might be disconnected, and the client session process might be ended immediately. When the process is ended, there is no opportunity for the process to restore the taskbar to a visible state.

RESOLUTION

To display the taskbar after it disappears, use one of the following methods:

Method A: The User Fixes the Problem

  1. Correct the cause of the unexpected termination by using one of the following methods:
    • Close some applications.
    • Increase program memory, as indicated by the Low on Program Memory dialog box.
  2. Start a new CETSC session, and then end the session correctly.

    After this terminal session has been ended, the taskbar reappears.

Method B: The OEM Fixes the Problem

  1. An OEM creates a simple program that displays the taskbar again.

    This program requires only the following lines of code:
    #include <windows.h>
    
    int wmain (int argc, WCHAR **argv) {
    	HWND hWndTaskbar;
    
    	hWndTaskbar = FindWindow(L"HHTaskBar", NULL);
    	ShowWindow(hWndTaskbar, SW_SHOW);
    
    	return 0;
    }
  2. The OEM puts a link to this program on the Desktop for the user's convenience.

STATUS

This is a design limitation of Windows CE Terminal Services Client.

MORE INFORMATION

The Remote Desktop Protocol is the protocol that is used by Windows CE Terminal Services Client (formerly known as Microsoft Terminal Services Client).

Modification Type:MajorLast Reviewed:11/24/2003
Keywords:RDP kbprb KB825072 kbAudDeveloper kbAudOEM