Outlook stops responding when you perform an action in Corporate/Workgroup mode that takes a long time to complete (248022)
The information in this article applies to:
- Microsoft Outlook 97, when used with:
- Microsoft Outlook 98, when used with:
- Microsoft Outlook 2000, when used with:
This article was previously published under Q248022 SYMPTOMS When you use Outlook in Corporate/Workgroup mode on a
computer that is running Windows 95 or Windows 98 and you are connected to a
Microsoft Exchange Server computer, you perform an action in Outlook that
requires a long time to complete. For example, you open or send a mail item
with a large attachment while you are connected remotely with a 28.8 Kbps
modem. While you wait for the action to finish, you switch to other
applications. After a while, it becomes difficult to use other applications.
Task-switching is very slow, if it occurs at all, and windows do not update in
appearance in response to mouse or keyboard input. At times, the Close Program dialog box may not appear when you press CTRL+ALT+DEL.
CAUSE Outlook, a multi-threaded application, uses the
single-threaded apartment (STA) model to synchronize remote procedure calls
(RPCs). Under the STA model, in response to an RPC in any thread, the RPC
runtime posts a message to the Windows message queue of the main STA thread.
The message queue dispatches the message to a hidden RPC window, which handles
further processing. Outlook RPCs are performed synchronously; the
client does not perform any other activity while it waits for the RPC to
complete; the Outlook message queue does not function, as it is waiting for the
DispatchMessage() function to return. Consequently, when Outlook is performing a
time-consuming RPC-based activity, such as sending or receiving long messages,
the Outlook message queue stops processing all Windows messages. A
small number of user actions cause the Windows 95 or Windows 98 operating
system to send a message to multiple application windows. The operating system
thread waits until all windows respond to the SendMessage call before resuming. The following activities can result in a SendMessage call to one or more Outlook windows:
- Opening a dynamic data exchange (DDE)-enabled application
(such as any Microsoft Office application).
- Resizing the taskbar or the system tray.
- Changing settings in Control Panel for keyboard, mouse, or
sound.
If the Outlook message queue is not processing messages,
however, the Outlook windows cannot respond to the SendMessage call. As a result, the operating system thread cannot continue,
and in turn, the operating system appears unresponsive to user input.
Note that this condition is inherent to the architecture of any Windows
95-based or Windows 98-based application that performs synchronous input/output
(I/O) over slow connections. WORKAROUND You may employ any of the following suggestions to avoid
the problem.
- Identify and correct any issues that may increase the
latency or decrease the reliability of your connection to the Exchange Server
computer.
- Change your configuration. If you only need mail and
folders, and do not need Exchange Server functionality such as the calendar,
tasks, the journal, and so on, use Outlook in Internet only (IMO) mode instead
of in Corporate/Workgroup mode.
- Change your configuration. Use Outlook on a computer that
is running Microsoft Windows NT Workstation instead of Windows 95 or Windows
98. In particular, Outlook 2000 and Microsoft Windows 2000 Professional
incorporate several features that optimize remote computing.
- While Outlook is processing a lengthy attachment, avoid
activities that cause broadcast system messages. For example, start other
applications before you send a large attachment, not after.
- Wait for the Outlook RPC-based activity to finish or
timeout.
STATUSMicrosoft
has confirmed that this is a problem in the Microsoft products that are listed
at the beginning of this article.
Modification Type: | Minor | Last Reviewed: | 7/27/2005 |
---|
Keywords: | kbprb kbstoprespond kbpending KB248022 |
---|
|