Installieren Sie RSClientPrint für Reporting Services 2012 mithilfe der BAT-Datei und verwenden Sie weiterhin 2005

Installieren Sie RSClientPrint für Reporting Services 2012 mithilfe der BAT-Datei und verwenden Sie weiterhin 2005

Ich habe einen Reporting Services 2005-Server, auf den Benutzer beim Versuch, Berichte zu drucken, eine Meldung erhielten, in der sie aufgefordert wurden, das Drucksteuerelement zu installieren, was ihnen aufgrund fehlender Berechtigungen nicht möglich war. Eine Problemumgehung, die ich damals gefunden hatte, bestand darin, die DLL- und RL-Dateien beim Start über die Gruppenrichtlinie auf den Computer zu kopieren und sie dann zu registrieren. Jetzt führen wir ein Upgrade auf Reporting Services 2012 durch, das Drucksteuerelement hat sich geändert und ich muss dies erneut tun.

Ich habe 3 Fragen.

Ich kann die DLL- und RL-Dateien auf meinem Computer nicht finden, um sie in eine Freigabe einzufügen. Wo soll ich danach suchen?
Ich habe sowohl 32-Bit- als auch 64-Bit-Rechner. Macht das einen Unterschied bei den Dateien, die ich benötige? Funktioniert das folgende Skript ansonsten trotzdem?

if not exist %windir%\system32\rsver3.txt goto ADD

GOTO END

:ADD
regsvr32.exe /u /s rsclientprint.dll
copy \\server\share\RSClientPrint.dll %windir%\system32
copy \\server\share\RSClientPrint_1028.rll %windir%\system32
copy \\server\share\RSClientPrint_1031.rll %windir%\system32
copy \\server\share\RSClientPrint_1033.rll %windir%\system32
copy \\server\share\RSClientPrint_1036.rll %windir%\system32
copy \\server\share\RSClientPrint_1040.rll %windir%\system32
copy \\server\share\RSClientPrint_1041.rll %windir%\system32
copy \\server\share\RSClientPrint_1042.rll %windir%\system32
copy \\server\share\RSClientPrint_1043.rll %windir%\system32
copy \\server\share\RSClientPrint_1046.rll %windir%\system32
copy \\server\share\RSClientPrint_1053.rll %windir%\system32
copy \\server\share\RSClientPrint_2052.rll %windir%\system32
copy \\server\share\RSClientPrint_3082.rll %windir%\system32
copy \\server\share\gdiplus.dll %windir%\system32
copy \\server\share\rsver3.txt %windir%\system32
regsvr32.exe /s  %windir%\system32\rsclientprint.dll
:END

Aktualisieren

Ich habe das obige Skript wie folgt geändert und die x86- und 64-Dateien in verschiedenen Ordnern abgelegt.

Diese Dateien wurden aus c:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer\bin\RSClientPrint-x64.cab und c:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer\bin\RSClientPrint-x86.cab extrahiert und in den entsprechenden Ordnern abgelegt.

und es scheint auf 32-Bit- und 64-Bit-Systemen zu funktionieren, allerdings können Sie auf den 32-Bit-Rechnern nicht mehr aus Reporting Services 2005 drucken. Sie werden aufgefordert, die Drucksteuerung zu installieren. Die 64-Bit-Rechner können nach dem Ausführen dieses Skripts sowohl aus Reporting Services 2005 als auch aus 2012 drucken.

if exist %windir%\SysWOW64\nul goto X64
GOTO X86

:X86
if not exist %windir%\system32\rsver5.txt goto ADD86

GOTO END

:ADD86

regsvr32.exe /u /s %windir%\system32\rsclientprint.dll
copy /Y \\server\share\x86\RSClientPrint.dll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1028.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1031.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1033.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1036.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1040.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1041.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1042.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1046.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_1049.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_2052.rll %windir%\system32
copy /Y \\server\share\x86\RSClientPrint_3082.rll %windir%\system32
copy /Y \\server\share\gdiplus.dll %windir%\system32
copy /Y \\server\share\rsver5.txt %windir%\system32
regsvr32.exe /s %windir%\system32\rsclientprint.dll

GOTO FINISH

:X64

if not exist %systemroot%\SysWoW64\rsver5.txt goto ADD64

GOTO END

:ADD64

 %systemroot%\SysWoW64\regsvr32.exe /u /s %systemroot%\SysWoW64\rsclientprint64.dll
 %systemroot%\SysWoW64\regsvr32.exe /u /s %systemroot%\SysWoW64\rsclientprint.dll

copy /Y \\server\share\64\RSClientPrint64.dll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1028.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1031.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1033.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1036.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1040.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1041.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1042.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1046.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_1049.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_2052.rll %systemroot%\SysWoW64
copy /Y \\server\share\64\RSClientPrint64_3082.rll %systemroot%\SysWoW64

copy /Y \\server\share\x86\RSClientPrint.dll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1028.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1031.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1033.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1036.rll%systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1040.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1041.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1042.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1046.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_1049.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_2052.rll %systemroot%\SysWoW64
copy /Y \\server\share\x86\RSClientPrint_3082.rll %systemroot%\SysWoW64

copy /Y \\server\share\gdiplus.dll %systemroot%\SysWoW64
copy /Y \\server\share\rsver5.txt %systemroot%\SysWoW64

%systemroot%\SysWoW64\regsvr32.exe  /s %systemroot%\SysWoW64\rsclientprint64.dll
%systemroot%\SysWoW64\regsvr32.exe  /s %systemroot%\SysWoW64\rsclientprint.dll

GOTO FINISH

:FINISH

:END

Antwort1

Hey, nur zur Information, Sie haben das falsch verstanden. Die 32-Bit-DLL-Dateien sollten zu SysWOW64 und die 64-Bit-Dateien zu System32.

Es ist verwirrend, aber so funktioniert es mit DLLs: SysWOW64 enthält die emulierten 32-Bit-DLL-Dateien und system32 die nativen 64-Bit-Dateien.

Hoffe, das hilft jemandem.

Antwort2

Die Datei Rsclientprint.inf fehlt.

verwandte Informationen