Error “Unable to load client print control” when printing reports in Reporting Services (summary of possible causes and solutions)



 


Due to the great confusion I perceive about this error and its possible causes and solutions, I decided to remove my 3 old posts that talked about this error and create a single and more complete posts that I hope helps you resolve all the possible causes of this error when trying to print reports in Reporting Services. 


 


“Unable to load client print control”


 


 


POSSIBLE CAUSES AND PROPOSED SOLUTIONS:


 


There could be 2 possible causes for this issue, very differnt from each other:


 


1. This error could be caused by a known update to the RSClientPrint control  (MS09-062): http://support.microsoft.com/kb/971023


 


There are some fixes already built for this (1. To fix direct accesses to Report Manager 2. To fix applications that access Report Manager like CRM in your case). See bellow:


 


1. To fix accesses to Report Manager you should install the following in the Report Server machine:


 


Service Pack 3 de Microsoft SQL Server 2005


http://www.microsoft.com/downloads/details.aspx?displaylang=es&FamilyID=ae7387c3-348c-4faa-8ae5-949fdfbe59c4


 


and


 


Cumulative update package 8 for SQL Server 2005 Service Pack 3


http://support.microsoft.com/kb/978915


 


2. To fix accesses to the Reporting Services from an application (like CRM, SharePoint or a web application) you would need to install the fixes bellow. They will be different depending on the version of the Report Viewer control:


 


To check the version of the ReportViewer control.


 


1. Open a report for viewing on a client machine
2. Then right click on the report and select “View Source”.


Locate the line that looks like this:
<script src=”http://blogs.msdn.com/TestRSClientPrintReportViewer/Reserved.ReportViewerWebControl.axd?OpType=Resource&amp;Version=X.Y.ZZZZ


a) If the control type is “Reserved.ReportViewerWebPart.axd” then this is an issue with SharePoint.



The “Microsoft SQL Server 2005 Reporting Services Add-in for Microsoft SharePoint Technologies” has been updated to work with the new rsclientprint.dll.


Download center link:
http://www.microsoft.com/downloads/details.aspx?FamilyID=1e53f882-0c16-4847-b331-132274ae8c84&displaylang=en



b) If the control type is “Reserved.ReportViewerWebControl.axd” we should check the following:



We have 2 different major versions here: 8.00.50727 and 9.00.XXXX.
If you see version 8.00.50727 this means you are browsing reports from within CRM or using the ReportViewer control in a custom 2005 web application.
If you see version 8.00.50727 and the version is earlier than 8.00.50727.1843 then you should install Report Viewer Redistributable 2005 Service Pack 1 on the ReportServer or on the CRM server or machine where the web application is running:


Microsoft Report Viewer Redistributable 2005 SP1 (Full Installation)


http://www.microsoft.com/downloads/details.aspx?familyid=E7D661BA-DC95-4EB3-8916-3E31340DDC2C&displaylang=en


 


and


 


Report Viewer Redistributable 2005 Service Pack 1 GDIPLUS.DLL Security Update


http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=0dfaf300-2b53-4678-a779-0d805ddfe538


 


c) If you see version 9.00.XXXX or 9.0.XXXX then you are browsing through Report Manager, Report Server or perhaps a custom web application built with VS 2008.
Then you should install the below on the report server and in the machine where the web application is running:


 


Microsoft Report Viewer 2008 SP1 Redistributable
http://www.microsoft.com/downloads/details.aspx?FamilyID=bb196d5d-76c2-4a0e-9458-267d22b6aac6&DisplayLang=en


 


And


 


Report Viewer Redistributable 2008 Service Pack 1 GDIPLUS.DLL Security Update


http://www.microsoft.com/downloads/details.aspx?familyid=6aaa74bd-a46e-4478-b4e1-2063d18d2d42&displaylang=en



After having updated the ReportViewer control you must issue an iisreset command so that the updated controls will take effect.


 


 


2. Or it could be a permissions issue:


 


When trying to print reports from Reporting Services, the RSClientPrinty control needs to be downloaded and installed to the client machines. This is done automatically the first time a user tries to print a report and the users need to be administrators or Power Users in order to be able to download the control though the web.


 


Users that are not administrators nor Power Users don’t have permissions to deploy of the RsClientPrint control to IE from the server (not allowed installing ActiveX components)


 


This happens the first time you run a report or after installing some cumulative updates or service packs that modifies this control and needs to be redeployed. Each time the client clicks on the print button; there is a round trip to the server to check if the client has the latest version.


 


The following links explains that you need administrator permissions in order to download the print control to download it from the server:


http://msdn.microsoft.com/en-us/library/ms159190(SQL.90).aspx


 


 


2 POSSIBLE ALTERNATIVES:


 


Deploy the control manually:


 


If the users weren’t administrators or power users, the issue could be resolved by deploying the files manually:


 


1.       Go to C:\Program Files\Microsoft SQL Server\MSSQL.x\Reporting Services\ReportServer\bin on the report server and copy the rsclientprint.cab file


2.       Extract the files from the rsclientprint.cab file.


3.       Copy all the files to the client computer to Windows\Downloaded Program Files (you might need to do it using the command windows)


c:\print\RSClientPrint.dll


c:\print\rsclientprint.inf


c:\print\RsClientPrint_1028.rl


c:\print\RsClientPrint_1031.rl


c:\print\RsClientPrint_1033.rl


c:\print\RsClientPrint_1036.rl


c:\print\RsClientPrint_1040.rl


c:\print\RsClientPrint_1041.rl


c:\print\RsClientPrint_1042.rl


c:\print\RsClientPrint_2052.rl


c:\print\RsClientPrint_3082.rl


4.       Register RSClientPrint.dll by opening a command line (Start->Run) regsvr32 [path]RSClientPrint.dll


 


Or creating a script to install the control using “Run As”


 


“Run As” is a tool that allows running programs as a different user than the currently logged-on user. It is described in the article:


 


How to enable and use the “Run As” command when running programs in Windows


http://support.microsoft.com/?id=294676


 


Steps to create the script would be:


1.  On a Domain Controller, create a share with the appropriate rights for a “simple user”
2.  On this share create a file called runas.vbs with the following code:



‘RunAs Helper
‘Syntax: runas.vbs <username> <command>

set args=wscript.arguments
username = args(0)
‘ Enter the password in the variable pass
pass = “administrator password
‘Get the command arguments
for i=1 to args.count – 1
command = command & args.item(i) & ” “
Next
set shell=wscript.createobject(“Wscript.shell”)
‘Run runas.exe
shell.run “runas.exe /user:” & username & ” “”” & command & “”””,2,FALSE
‘Wait for runas.exe to load, this time could be shorter, but is set to 1000
‘to be safe
wscript.sleep(1000)
‘Send the password and hit enter
shell.sendkeys pass & “{ENTER}”
wscript.sleep(1000)



3. Extract the dll and inf files from your ActiveX on the share.
4. Download the Windows Script Encoder, available on


http://www.microsoft.com/downloads/details.aspx?FamilyId=E7877F67-C447-4873-B1B0-21F0626A6329&displaylang=en


 


and encrypt the original vbs file: original_vbs_file.vbs vbs_encrypted_file.vbe


The script encoder is a command-line tool that allows a scriptwriter to protect the contents of a script from unauthorized copies or modifications while ( at the same time ) allowing the script to run.


 


       5- Create a logonscript with the following instructions:



net use z: \\server\share <file://\\server\share> ‘Map the share to a local drive.


 


The files need to be local so as to be installed..



z:\vbs_encrypted_file.vbe domain\admin rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 z:\rapport.inf
z:\vbs_encrypted_file.vbe domain\admin rundll32.exe setupapi,InstallHinfSection DefaultInstall 132 z:\vbs.inf
net use z: /d ‘Delete the mapping



 


 


I hope this helps,


 


Maria Esteban


Reporting Services Support Engineer

Comments (20)

  1. Basarnd says:

    Great post, finally solved my "unable to load print control"  error!

  2. J says:

    Any idea on the issue when the version 10.0.2775 is in the source of the report? I'm running SQL 2008 SP1 CU 8. I did already install Report Viewer 2008 SP1, but that is version 9.0.30729.1. Currently the control keeps requesting to be installed when you want to print a report

  3. Nishan Perera says:

    Our Server environment : SQL2008 x64 SP2 Reporting Services on Windows Server 2008 x64,

    Client PC environment: Windows XP SP2 with IE6 or higher, all users are login to Active Directory, users are not members of local Administrator or power user group.

    Error: When a user printing a report  getting an error as "Unable to load client print control"

    Solution that work for us: replace following files in sql 2008 with SQL 2008 R2

    Program FilesMicrosoft SQL ServerMSRS10.MSSQLSERVERReporting ServicesReportServerbin

    RSClientPrint-x86.cab

    RSClientPrint-x64.cab

    RSClientPrint-ia64.cab

    Once you replace the files one server users wont get above error and they do not required local power user or admin right to download Active X. Recommending to add report server URL as a trusted site (add to Trusted sites) via Active Directory GP.

    Hope this will help for somebody to sort out this "hectic" problem. We had very tough time to find out a proper solution for this "bug".

    Nishan

  4. Nishan Perera says:

    Our Server environment : SQL2008 x64 SP2 Reporting Services on Windows Server 2008 x64,

    Client PC environment: Windows XP SP2 with IE6 or higher, all users are login to Active Directory, users are not members of local Administrator or power user group.

    Error: When a user printing a report  getting an error as "Unable to load client print control"

    Solution that work for us: replace following files in sql 2008 with SQL 2008 R2

    Program FilesMicrosoft SQL ServerMSRS10.MSSQLSERVERReporting ServicesReportServerbin

    RSClientPrint-x86.cab

    RSClientPrint-x64.cab

    RSClientPrint-ia64.cab

    Once you replace the files one server users wont get above error and they do not required local power user or admin right to download Active X. Recommending to add report server URL as a trusted site (add to Trusted sites) via Active Directory GP.

    Hope this will help for somebody to sort out this "hectic" problem. We had very tough time to find out a proper solution for this "bug".

    Nishan

  5. Nishan says:

    Our Server environment : SQL2008 x64 SP2 Reporting Services on Windows Server 2008 x64,

    Client PC environment: Windows XP SP2 with IE6 or higher, all users are login to Active Directory, users are not members of local Administrator or power user group.

    Error: When a user printing a report  getting an error as "Unable to load client print control"

    Solution that work for us: replace following files in sql 2008 with SQL 2008 R2

    Program FilesMicrosoft SQL ServerMSRS10.MSSQLSERVERReporting ServicesReportServerbin

    RSClientPrint-x86.cab

    RSClientPrint-x64.cab

    RSClientPrint-ia64.cab

    Once you replace files on server side users wont get above error but it is required to do one time installation of this Active X component as a local Administrator or power user. If you are having large number of computers running on Active Directory environment you may create a MSI file with rsclientprint.dll and deploy using AD or SMS. Also I'm  recommending to add report server URL as a trusted site (add to Trusted sites) via Active Directory GP.

    Hope this will help for somebody to sort out this "hectic" problem. We had very tough time to find out a proper solution for this "bug".

    Nishan

    -Sri Lanka-

  6. PP says:

    Our environment is SQL Server 2008.And I tried the option c) suggested in your post but sadly  it did not work for us.

    Still  getting the "Unable to load Client Print Control" error.And our application is a web based application which have reports using SSRS and include the client print button.

    Any suggestions/Fixes would be of great help.

  7. J says:

    Thanks Nishan. I can confurm this is a version related error. I did upgrade to 2008 SP2-CU2 and the problem did go away.

  8. Christophe says:

    When installing locally, I typed the wrong credentials :-(

    What's the command to unregister please?

  9. Grim Repair says:

    Wow, I can see that M$ has not yet fixed this serious bug, 3 years later.  I wonder how long M$ can get away with selling this kind of poor quality technology – it absolutely astounds me how they have hobbled business software development in the last few decades, and no one can hold them responsible.  Bizarre.

  10. Chris's Repair says:

    The repair for this bug as of 3/29/2012 since the problem has started back in is to upgrade to 2008 or to create and run in a 32-bit internet Explorer (iexplorer.exe). This works on all Window 7 64-bit OS.   Took me forever to figure this out and through trial and error got it.

  11. Chris's Repair says:

    Also the solutions entered above might as well be cleared out of Maria's Blog as a new KillBit came out in Feb. that makes all of that above not work on a 64-Bit OS system. The Solution is to make your default internet explorer a 32-bit one when opening SQL Server Reports. Cause I did waste 2 weeks looking for a solution and 3 days with MS agents when I found the solution by chance on my own!!!!!!

  12. John says:

    Can you update this for Windows 7 and Windows 8 and SSRS 2012

  13. sunil says:

    What is solution for windows 7 and SSRS 2012

  14. Sunil says:

    What is solution for Windows 7 and Windows 8 and SSRS 2012. Please help.

  15. Vladislav Golik says:

    RE:  Grim Repair   20 Oct 2011 6:02 AM  #

    The problem is not fixed now. So 3 years + 3 years = 6

    M$ the best

  16. Ebrima Sise says:

    When I come across this problem, I use the most basic method to print – control+p then select the desired printer. Thats basically it. I hope that helps

  17. frogola says:

    Nailed it, thanks.  Had no idea it was trying to install anything.

  18. palik says:

    on our enviroment giving the user admin porivileges was not working – but opening IE with "open as administrator" (Right mouse click and the option with icon) worked, i think that UAC confirmation message was messing up installation, when we opened IE as admin and tehere was no UAC message it worked :)

  19. Roel says:

    We found a solution for POSReady 2009 / Windows XP clients and SSRS 2014.

    The issue was solve by installing the Microsoft Visual C++ 2010 Redistributable Package on the clients.

    After this the clients could install the Active-X component and the error message "Printing not available" disappeared and the printer selection appeared

  20. Vijay says:

    Do note the change introduced by SQL Server 2016 – msdn.microsoft.com/…/ms155874.aspx Hopefully no more such errors while printing :) – @vijayreports