ここでは、各種の SMS 2.0 リモート コントロール機能について詳しく説明します。
高速画面転送は、Windows NT プラットフォームにのみ適用されます。Windows 95、Windows 98、および Windous 3.1x のリモート コントロール エージェントはグラフィック デバイス インターフェイス(GDI)からディスプレイ ドライバへのコールを傍受するので、これらのプラットフォーム上では高速化の必要はありません。しかし、Windows NT 上ではハードウェア抽象層(HAL)の存在によりこの連携が妨害され、画面の変更を傍受するために余分な時間が費やされます。
◆
SMS 管理コンソールで、次の順番に展開します。
詳細ペインで、[リモート ツール クライアント エージェント]を右クリックし、次に[プロパティ]をクリックします。
[詳細設定]タブをクリックし、次に[Windows NT クライアントの高速画面転送をインストールする]を選択します。
[適用]をクリックし、次に[OK]をクリックします。
このリストは、Windows NT クライアント上の次のレジストリ キーに渡されます。
Windows NT コンピュータ上の高速画面転送は、.sys ファイルである Idis_nt(Windows NT 4.0 の場合)または Idisntkm ファイル(Windows 3.51 の場合)のいずれかによって実現されます。オペレーティング システムごとに適切なドライバが、System32 ディレクトリ(Windows NT 4.0 の場合は System32\drivers)にロードされます。このドライバは、リモート コントロール セッション中にビデオ高速化を管理するための追加のビデオ ドライバとしてインストールされ、それ以外の用途に使用されることはありません。ドライバはロードされて常に起動していますが、それが使用されるのはリモート コントロール セッション中のみです。
クライアントのビデオ カードで高速画面転送が使用できるかどうかの判断は、クライアントにリモート コントロールがインストールされた時点で行われます。
◆
Regedt32 または Regedit を使って、次のレジストリ キーを選択します。
各Device\Video0 キーを調べ(複数存在する場合があります)、それぞれの Services\<Video drive>\Device0 キーをメモします。
これらのキーをポインタとして使って、次のレジストリ キーを表示します。
InstalledDisplayDrivers キーが設定されていることを確認します。ここには 1 つ以上のディスプレイ ドライバが記述されているはずです。
あるいは、クライアントのデスクトップ上に[SMS リモート コントロール]アイコンが存在する場合は、それをダブルクリックして状態の表示ウィンドウを開きます。リモート コントロールのステータス ウィンドウに、高速画面転送がロードされているかがステータス行として表示されます。
Windows NT 高速画面転送の有効化はトライ アンド エラーのプロセスです。この設定を行うとWindows NT レジストリ内の標準ビデオ ドライバ名の間に高速化 DLL の名前が挿入されます。クライアントが再起動されるたびに、システムはドライバ リストの最初のアイテムをロードしようと試み、この時点で高速化ドライバが正しくロードされなかった場合は高速化は行われず、リストからこれが削除され、レジストリ内のその場所には元のドライバ名の 1 つがロードされます。
リモート コントロール クライントのインストール時に、サイト内のすべての Windows NT クライアントに Windows NT ビデオ アクセラレータをインストールすると、標準 SVGA カードを使用し専用ドライバを持たない Windows NT 4.0 コンピュータ上では次のようなプロセスが発生します。次の説明に登場するビデオ ドライバのリストは、InstalledDisplayDrivers レジストリ キーに格納されます(このキーの場所は前述の「特定のクライアント上で高速画面転送が有効になっているかを判断するには」を参照してください)。
リモート コントロール クライアント インストールの実行可能プログラムは、適切な DLL をクライアントの %Windir%\System32 ディレクトリ(Windows NT 3.51 クライアントの場合は Idis_nt.dll、Windows NT 4.0 クライアントの場合は Idisntkm.dll)にコピーします。
リモート コントロール のインストールは、Rchwcfg.exe(ハードウェア マンガー)を呼び出します。これは、アクセラレータがロードされるようにするために、クライアント上にビデオ ドライバ リストを設定します。たとえば、ビデオ ドライバ リストは最初次のように表示されます。
リモート コントロール クライアント インストールが終了した後、Wuser32 サービスが自動的に起動します。ただし、ビデオ ドライバの変更には再起動が必要なため、クライアントを再起動しビデオ アクセラレータがロードされるまで、Wuser32 サービスはこれを使用することはできません。
インストール後の最初の再起動時には、VGA ドライバが使用されます。このドライバはビデオ アクセラレータをロードしようと試みますが失敗し、アクセラレータはロードされません。このステップの終了後、ビデオ ドライバ リストは次のようになります。
インストール後の 2 回めの再起動時に、vga256 ビデオ ドライバが使用されます。これは高速画面転送をサポートするドライバであるはずなので、ビデオ アクセラレータをロードする試みが再度実行されます。
2 回めの再起動においてビデオ アクセラレータがロードされない場合は、3 回めの再起動においては vga64k ビデオ ドライバが使用されます。このビデオ ドライバについて正常にロードされた場合は、ビデオ ドライバ リストは次のようになります。
クライアント上のビデオ カードが専用ビデオ ドライバ(S3 など)を持っている場合は、ビデオ ドライバ リストは次のようになります。
S3 ビデオ ドライバは Intel により提供されている、高速画面転送をサポートできるビデオ ドライバのリストに記載されており、リモート コントロール クライアント インストールの過程で、ビデオ ドライバ リストは次のように変更されます。
再起動シーケンス中に S3 ドライバがビデオ アクセラレータを正常にロードできた場合は、以後のすべての再起動時に使用するドライバとして選択されます。
この場合は、すべての再起動が完了した後に vga256 または vga64k ドライバが選択されている場合のみ、ビデオ アクセラレータがロードされます
注 次回再起動時にリスト内の次のビデオ ドライバを試すプロセスは、ドライバがビデオ アクセラレータを正常にロードした後は停止します。vga256 が正常にアクセラレータをロードした場合は、Windows NT はビデオ ドライバ リスト内の vga256 以降のドライバを使用することを試みません。したがって、専用ドライバがアクセラレータをサポートする場合であっても、リスト内でこれより先に正常にアクセラレータをロードする汎用ドライバの名前が記述されている場合は専用ドライバは使用されません。
クライアントにおけるすべてのリモート コントロール機能の中核となるのは、Wuser32 サービス(Windows NT の場合)や Wuser32 擬似サービス(Windows 95 の場合)です。リモート コントロール エージェントが動作中であることを確認する場合は、Windows NT タスク マネージャまたはサードパーティ製のタスク ビューア プログラム(Pview95 や Wintop など)を使用します。
リモート コントロールに関してなんらかの問題が発生した場合は、コンピュータやそのほかの機能ではなく、クライアント側リモート コントロール エージェントの停止と再開を試みてください。
Windows NT クライアント上では、Wuser32 サービスは SMS リモート コントロール エージェントと呼ばれます。リモート コントロール エージェントを停止して再開する方法は次の 2 通りですが、いずれもクライアント コンピュータ上でローカルのAdministrator権限を必要とします。
◆
コマンド プロンプトを起動して、net stop Wuser32 と入力します。
サービスが停止した後、net start Wuser32 と入力してサービスを再開します。
◆
コントロール パネルの[サービス]アイコンをダブルクリックします。
[SMS Remote Control Agent]を選択し、次に[停止]をクリックします。
サービスが停止されるまで待ち、次に[開始]をクリックしてサービスを再開します。
Windows 95 および Windows 98 クライアント上でも、Wuser32 サービスはリモート コントロール エージェントと呼ばれます。これらのコンピュータ上でリモート コントロール エージェントを停止する方法は 2 通りあります。サードパーティ アプリケーションを使用する方法は次のとおりです。
◆
コマンド プロンプトで、%Windir%\MS\SMS\Clicomp\RemCtrl ディレクトリに移動します。
Wuser32 /X と入力します。しばらくするとエージェントが停止します。
◆
サードパーティのプロセス ビューア/キラー(Pview95 など)から、Wuser32 プロセスを選択します。
Wuser32 プロセスを削除または解放するためのオプションを選択します。
プロセスが停止した後、コマンド プロンプトで %Windir%\MS\SMS\Clicomp\ RemCtrl ディレクトリに移動します。
Wuser32.exe ダブルクリックして、サービスを再開します。
16 ビット クライアント用のWuserサービスは、16 ビットの Launch16 ベース クライアント サービスの機能として実行される .exe ファイルに過ぎません。これらのクライアントの場合は、メモリからアクティブなプロセスを削除するサードパーティ アプリケーションを使用してWuserエージェントを停止します。
◆
%Windir%\MS\SMS\Clicomp\RemCtrl ディレクトリに移動します。
Wuser.exe をダブルクリックします。
SMS 2.0 リモート コントロール エージェントはロギング機能に加え、そのほかの追加機能を提供するコマンドライン オプションを持っています。
/X オプションを使用すると、リモート コントロール エージェントを停止することができます。Windows 95 やWindows 98 ではエージェントは[STOP AGENT]オプションを持っておらず、(Ctrl + Alt + Del を使用して表示する)標準タスク リストに表示されません。エージェントを停止するには、次のコマンドを使用します。
複数のネットワーク インターフェイス カード(NIC)を持つクライアント上では、Wuser または Wuser32 エージェントが監視するアドレスとして、レジストリ内で最初にリストされている 1 つの IP または IPX アドレスのみが選択されます。したがってリモート コントロール エージェントが監視する IP アドレスを明示的に指定するためには、レジストリに追加を行う必要があります。
◆
コマンド プロンプトで、regedit と入力します。
レジストリ内の \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ SMS\Client\Client Components\Remote Control キーの下に、次のキーを挿入します。
◆
コマンド プロンプトで、winfile と入力します。
%Windir%ディレクトリまたは%Windir%\System32ディレクトリ内の SMSrc16.ini ファイル(存在する場合)の[Protocol]セクションを次の要領で編集します。
ヒント Multinic.exe アプリケーションを使用すると、コマンド ラインから(またはソフトウェア配布パッケージから)この変更を行うことができます。このプログラムは、本書に付属の CD-ROM または Systems Management Server 2.0 の CD-ROM の Support ディレクトリにあり、次のコマンドライン オプションを使用します(これらのオプションは大文字と小文字を区別します)。
リモート ツールの中には、特定のサーバーやクライアントがサイト単位セキュリティの調整(マギング)に参加しないようにする機能があります。一般にセキュリティ マギングは、レジストリに対するユーザー変更を正しいサイト設定によって上書きし、すべてのサイト単位設定がクライアント コンピュータに強制されることを保証する有効な手法です。
仮想デバイス ドライバは、リモート コントロール セッション時に行われるすべての キーボード、マウス、およびコントロール キー操作をクライアント コンピュータに渡します。このドライバがロードされるまでは、リモート コントロールはクライアントの画面を正確に表示するのみで、マウス操作や、キー ストロークを送ることはできません(これらのドライバは、Windows NT 3.51 および 4.0 が使用する RCHELP および KBSTUFF ドライバに相当します)。
◆
[はい]をクリックして、SMS 仮想マウス デバイスのインストールを許可します。
[はい]をクリックして、SMS 仮想キーボード デバイスのインストールを許可します。
SMS 2.0 はデフォルト プロトコルとして TCP/IP を使用しますが、クライアント コンピュータ上では UDP プロトコルを使用するようにも指定できます。UDP を使用するには、次に示すようにレジストリ内で User Settings キーを変更します。
UDP をデフォルト プロトコルにするようにレジストリを変更しても、SMS 管理コンソールからクライアント コンピュータへの接続には問題ありません。SMS はクライアント コンピュータへの接続を試みる際、既知のすべてのプロトコル(TCP/IP、UDP、IPX、および NetBIOS LANA)を使用して信号を送り、リモート コントロール クライアント エージェントが信号を返すときに使用されたプロトコルを使って応答します。
IPX のみを使用する環境の場合は、リモート ツールを有効にする際に、デフォルト プロトコルの初期値を TCP/IP から変更する必要もあります。これを行わない場合、クライアント エージェント(Wuser または Wuser32)は listen コマンドを送ることができず、サーバーではクライアントが「要求されたプロトコルを初期化できない」ことを告げるエラー メッセージを受け取ります。