Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

Programs that try to send a message to Session 0 may stop responding in Windows Vista


View products that this article applies to.

Symptoms

Certain programs, such as installation programs, services, or drivers, may appear to stop responding in Windows Vista.

This issue may occur if the program tries to use an interactive service to send a message dialog box to the user that is logged on to Session 0, or the "console session."

↑ Back to the top


Cause

The issue occurs because Windows Vista isolates services in Session 0 and runs user programs in other sessions. Because the user is no longer logged on to Session 0, the user cannot see the message dialog box. Therefore, the user cannot respond to the message dialog box that is sent to Session 0. The program appears to stop responding to wait for a response.

↑ Back to the top


Resolution

To resolve this issue, contact the manufacturer of the program for an updated version that is compatible with Windows Vista. For information about your hardware manufacturer, visit the following Web site:

↑ Back to the top


Workaround

To work around this issue, the interactive service detection service may provide notification to the user when a message dialog box is sent to Session 0. Then, the user has the option to interact with the dialog box. This service will not be available in future releases of Windows Vista.

↑ Back to the top


More information

Windows Vista isolates services in Session 0 and runs programs in other sessions. Therefore, services are protected from attacks that originate in program code. In Microsoft Windows Server 2003 and earlier versions of Windows, all services run in Session 0 together with programs. This behavior can pose a security risk because services run with elevated permissions. Therefore, these services are targets for malicious agents who are looking for a way to elevate their permissions.

For more information about how Session 0 isolation affects services and drivers, visit the following Microsoft Web page:

Service guidance

Services should not provide direct user interaction by using the SetProcessWindowStation function and the SetThreadDesktop function. A service should never open a window on the default desktop. This includes simple user notification dialog boxes such as a "Printer Out of Paper" notification or a Driver Package restart request. Instead, services that need user interaction should use a client/server model. Such services should communicate through client/server style mechanisms such as remote procedure call (RPC) or COM. The use of named objects must follow the "Terminal Services Programming Guidelines for Kernel Object Namespaces." These guidelines are documented in the SDK because the service runs in Session 0 and the client computer runs in a later session.

↑ Back to the top


Keywords: kbtshoot, kbinfo, kbexpertiseadvanced, KB925518

↑ Back to the top

Article Info
Article ID : 925518
Revision : 9
Created on : 3/15/2007
Published on : 3/15/2007
Exists online : False
Views : 647