Home > Windows にまつわる e.t.c.

リモート デスクトップのローカル プリンター リダイレクトを停止する


クライアント用のプリンターを設定していない Windows Server へリモート デスクトップ接続をすると、以下のエラーが記録されます。

ソース: TerminalServices-Printers
イベント ID: 1111

「プリンター xxxx に必要なドライバー xxxx が認識されません。管理者に問い合わせてドライバーをインストールしてから、もう一度ログインしてください。」

これは、リモート デスクトップ クライアントのデフォルトが、ローカルプリンターのリダイレクト ON になっているため、リモート デスクトップ接続をした先のサーバーにプリンター リダイレクトをリクエストし、サーバーにプリンタードライバーがインストールされていないためです。

「リモートデスクトップ サービス」の役割をインストールしていると、このあたりのコントロールはポリシーで設定出来ますが、管理目的でリモートデスクトップを有効にしている場合は、この設定をする GUI がインストールされません。

管理目的であれば、プリンターリダイレクトは不要なので、サーバー側でリダイレクト要求そのものを受け付けない様にするには、サーバー側に以下のレジストリー設定します。

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp

Key: "fDisableCpm"
タイプ: Dword
値: 00000001

レジストリーなので、GPO として設定する事が出来ますが、ワークグループとかに展開するのであれば、以下の様な PowerShell で設定出来ます。

##################################################################
#
# Windows Server リモートデスクトップ設定変更
# ゴミイベントを記録しないようにローカルプリンターのリダイレクトをサーバー側で停止する
#
# 2013/09/04 1.0 新規作成 S.Murashima
#
##################################################################

$RegPath ="HKLM:\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp"

# fDisableCpm キーがあれば更新し、キーが無かったら追加する
$RegKey = "fDisableCpm"
$RegValue = 1

Get-ItemProperty $RegPath -name $RegKey
if( $? ){
        # キーがあったので更新
        Set-ItemProperty $RegPath -name $RegKey -Value $RegValue
}
else {
        # キーが無かったので追加
        New-ItemProperty $RegPath -name $RegKey -PropertyType DWord -Value $RegValue
}

 

back.gif (1980 バイト)

home.gif (1907 バイト)

Copyright © MURA All rights reserved.