BUG: UMPD Doesn't Work on Windows NT Terminal Server 4.0 Client (241171)
The information in this article applies to:
- Microsoft Windows NT Server 4.0
- Microsoft Windows NT Workstation 4.0
- Microsoft Windows NT 4.0 Driver Development Kit (DDK)
This article was previously published under Q241171 SYMPTOMS
In Microsoft Windows NT 4.0 the User Mode Printer Driver (UMPD) is hooked in the Spoolsv.exe. It intercepts the printer data streams and uses Spoolss.dll directly to print the data.
CAUSE
The Terminal Server remote session maps the Win32k.sys and printer device driver into its own SESSION space. The threads that run inside of the spool subsystem can only read the requests from printer drivers running on the console. To solve this problem, the spooler code is duplicated and placed inside Winsrv.dll (in Windows 2000). The Umpd.dll hook functions are handled in the Terminal Server spooler which interfaces to the Winspool.drv.
The problem was that the Umpd.dll that is expected to use Spoolss.dll printer calls was given a Winspool.drv handle from the Terminal Server Spooler.
The hotfix includes new hooks for the UMPD which eliminate the above problem.
RESOLUTION
Obtain the hotfix #3749 for Winsrv.dll. This has been merged in Service Pack 5 for Terminal Server Edition 4.0.
STATUSMicrosoft has confirmed that this is a bug in the Microsoft products that are listed at the beginning of this article.
Modification Type: | Minor | Last Reviewed: | 7/27/2004 |
---|
Keywords: | kbbug kbprint KB241171 kbAudDeveloper |
---|
|