Remote Desktop – Session Printers (Printer Redirection) Missing – Error Code 0x7E

Over the last year and a half, with the onset of a global pandemic, System Lifeline has assisted many of our clients in mobilizing their workforce to allow them to be productive while working remotely.  One of the methods some of our clients use, is remote desktop connection to their work PC (through a VPN, of course) so they have all their familiar programs and settings already in place.

In some cases (like cheque printing), customers may need the ability to access local resources on their home network while logged into their remote desktop session at work.  Recently, in this exactly scenario, we had a user report that their home printers were simply missing.  One day they could access them, the next day they could not.

Their work printers were still available, but no redirected printers would show up in their list of available printers.

What we found was a little strange.  On the remote machine, the local “remote desktop session host policies” for printer redirection were correct: (Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Printer Redirection).

On the local or “home” machine, the remote desktop application was set to share local resources.  Other components were functioning properly, like access to the local drives from the remote session.

Looking in the Print Service Admin event viewer log did reveal an error each time the user logged into the remote PC, when the system was attempting to generate the redirected printers:

Log Name: Microsoft-Windows-PrintService/Admin
Source: Microsoft-Windows-PrintService
Date: 05/17/2021 1:35:45 PM
Event ID: 808
Task Category: Initializing
Level: Error
Keywords: Print Spooler
User: SYSTEM
Computer: workpc14.workdomain.local
Description:
The print spooler failed to load a plug-in module C:\WINDOWS\system32\spool\DRIVERS\x64\3\tsprint.dll, error code 0x7E. See the event user data for context information.

As it turns out, for whatever reason, the tsprint.dll file was actually missing from the C:\WINDOWS\system32\spool\DRIVERS\x64\3\ directory.  In fact, when comparing to another system on the network (same brand and model, same operating system), we were missing 3 files:

  • tsprint.dll
  • tsprint-PipelineConfig.xml
  • tsprint-datafile.dat

The solution here was to copy these 3 files from the alternate machine to the problem machine, and then log out and back in.  The session printers were created without issue, accessible, and successfully printing from the remote machine again.