Установите RSClientPrint для Reporting Services 2012, использующий .bat файл, и все еще смогите использовать 2005

У меня есть сервер Reporting Services 2005, который, когда пользователи получили доступ к нему и попытались распечатать отчеты, получит сообщение, прося, чтобы они установили управление печатью, которое они не могли сделать из-за отсутствия разрешения. Работа вокруг я нашел в то время, когда должен был скопировать .dll и .rll файлы к их компьютеру на запуске через групповую политику и затем зарегистрировать его. Теперь мы обновляем до Reporting Services, которую изменили 2012 и управление печатью, и я должен сделать это снова.

У меня есть 3 вопроса.

Я не могу определить местоположение .dll и .rll файлов на моем компьютере, чтобы вставить долю. Где я должен искать их.
У меня есть соединение машин на 64 бита и на 32 бита. Это будет иметь значение в том, в каких файлах я нуждаюсь? Будет сценарий ниже в других отношениях тихой работы?

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

Обновление

Я изменил вышеупомянутый сценарий к следующему и поместил x86 и 64 файла в различных папках.

Эти файлы были извлечены из c:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer\bin\RSClientPrint-x64.cab и c:\Program Files\Microsoft SQL Server\MSRS11.MSSQLSERVER\Reporting Services\ReportServer\bin\RSClientPrint-x86.cab и поместили в соответствующих папках

и это, кажется, работает над системами на 64 бита и на 32 бита, однако, это больше не позволяет Вам печатать от Reporting Services 2005 на машинах на 32 бита. Это запрашивает для установки управления печатью. Машины на 64 бита могут распечатать от обеих Reporting Services 2005 и 2012 после запущения этого скрипта.

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
0
задан 16 May 2014 в 00:29
2 ответа

Файл Rsclientprint.inf отсутствует.

-1
ответ дан 5 December 2019 в 13:58

Привет, для справки на будущее, вы неправильно поняли. 32-битные файлы DLL должны идти в SysWOW64, а 64-битные - в system32.

Непонятно, но именно так он работает с DLL: SysWOW64 содержит 32-битные эмулированные DLL-файлы, а system32 - собственные 64-битные.

Надеюсь, это кому-то поможет.

1
ответ дан 5 December 2019 в 13:58

Теги

Похожие вопросы