PRB: Site Server Performance Extension DLLs Require a Message Pump |
Q268242
The information in this article applies to:
- Microsoft Win32 Application Programming Interface (API), included with:
- Microsoft Windows NT Server version 4.0
- Microsoft Windows NT Workstation version 4.0
SYMPTOMS
The following Site Server 3.0 performance extension dynamic-link libraries (DLLs) all use COM in such a manner that they require the thread that loads them to pump Windows messages:
- Brkcntrs.dll
- Ldapctrs.dll
- Mbldctrs.dll
If an interactive service loads these DLLs and then enters a wait state without pumping messages, the system hangs when the user attempts to log off. Eventually, an OleMainThreadWndName dialog box is displayed, containing the following error message:
This Windows application cannot respond to the End Task request.
The dialog box contains three buttons: Wait, End Task, and Cancel. The user must click End Task to proceed with the log-off operation.
RESOLUTION
To work around this problem, the thread that loads the performance extension DLLs must also pump messages. For additional information about how a thread can enter a wait state and simultaneously watch for messages to pump, click the article number below to view the article in the Microsoft Knowledge Base:
Q136885 OLE Threads Must Dispatch Messages
STATUS
This behavior is by design.
MORE INFORMATION
Typically, the loading of performance extension DLLs occurs when Performance Data Helper (PDH) is used to query performance counters. This also occurs if the RegQueryValueEx function is used to open the HKEY_PERFORMANCE_DATA key.
REFERENCES
For additional information about COM threading models and an explanation of why a message pump is required, click the article number below to view the article in the Microsoft Knowledge Base:
Q150777 INFO: Descriptions and Workings of OLE Threading Models
Additional query words:
Keywords : kbAPI kbKernBase kbPerfMon kbDSupport kbGrpDSKernBase kbSiteServ
Issue type : kbprb
Technology : kbAudDeveloper kbWin32sSearch kbWin32API
Last Reviewed: October 28, 2000 |