¿Quizás podría crear un script de inicio de sesión que asigne la impresora en función de la conexión RDP? Primero cree un archivo "iplist.txt" que contenga las direcciones IP y los departamentos para los que desea asignar la impresora:
192.168.0.173,Marketing
192.168.1.173,Sales
192.168.2.173,Finance
Coloque el archivo iplist.txt en un directorio al que la persona que inicie sesión tendrá acceso de lectura. Desde allí, puede usar este archivo por lotes para asignar la impresora:
@echo off
netstat -na | find "3389" | find "ESTABLISHED" > logfile.txt
for /f "tokens=1,2 delims=," %%a in (iplist.txt) do (
for /f %%i in ('findstr %%a logfile.txt') do (
set ip_addr=%%a
)
if "%ip_addr%" == "%%a" (
if "%%b" == "Marketing" (
rundll32 printui.dll,PrintUIEntry /in /q /n \\print_server\marketing_ptr
REM Set as default:
rundll32 printui.dll,PrintUIEntry /y /q /n
goto :end )
if "%%b" == "Sales" (
rundll32 printui.dll,PrintUIEntry /in /q /n \\print_server\sales_ptr
REM Set as default:
rundll32 printui.dll,PrintUIEntry /y /q /n
goto :end )
if "%%b" == "Finance" (
rundll32 printui.dll,PrintUIEntry /in /q /n \\print_server\finance_ptr
REM Set as default:
rundll32 printui.dll,PrintUIEntry /y /q /n
goto :end ) )
)
:end
del logfile.txt
También debe asegurarse de que logfile.txt se escriba en una ubicación a la que el usuario que inicie sesión tenga acceso de escritura.
Puede que no sea el truco que estás buscando, pero podría funcionar como una alternativa ...