(57)【要約】【課題】  手元にある端末のディスプレイ上に表示した画面の操作性・視認性を損ねることなく、遠隔地の端末の画面情報と手元の端末の情報の両方を表示することを課題とする。【解決手段】  本発明では、前述の課題を解決するため、手元にある端末の状態および設定情報を遠隔地の端末に送信し、遠隔地の端末側で受信した情報を画面情報の適切な領域に表示し、加工後の画面情報を手元にある端末側に送信し、手元にある端末のディスプレイ上に表示する手段を提供する。  また、手元にある端末の状態および設定情報を、背景が透けて見える透過ウィンドウに表示する手段を提供する。【選択図】図１８
2007065944.tif 000002
【特許請求の範囲】
【請求項１】
第１の計算機と第２の計算機をネットワークで接続したシステムで第２の計算機の画面情報を第１の計算機のディスプレイに表示する計算機情報の表示方法において、
第１計算機の計算機情報を、第１の計算機から第２の計算機へ送信し、
第２の計算機で前記計算機情報を受信し、前記受信した計算機情報の少なくとも一部を第２の計算機の画面情報に追加した修正画面情報を取得し、
前記修正画面情報を、第２の計算機から第１の計算機へ送信し、
第１の計算機で前記修正画面情報受信し、受信した修正画面情報を第１の計算機のディスプレイに表示することを特徴とする計算機情報の表示方法。
【請求項２】
第１の計算機と第２の計算機をネットワークで接続したシステムで第２の計算機の画面情報を第１の計算機のディスプレイに表示する計算機情報の表示方法において、
第２の計算機の画面情報を第１の計算機に送信し、
第１の計算機で、前記第２の計算機の画面情報に、第１計算機の計算機情報を表示する透過ウィンドウ描画を追加し、
前記計算機情報を追加した第２の計算機の修正画面情報を、
第１の計算機のディスプレイに表示することを特徴とする計算機情報の表示方法。
【請求項３】
請求項１又は請求項２に記載の計算機情報の表示方法において、前記第２の計算機の画面情報に追加する前記計算機情報は、ビットマップデータで表されたアイコンに関する情報であることを特徴とする計算機情報の表示方法。
【請求項４】
請求項３に記載の計算機情報の表示方法において、前記第１の計算機のディスプレイ上で、前記計算機情報を用いて表示されたアイコンにマウスカーソルを重ねると、前記計算機情報の詳細情報を表示することを特徴とする計算機情報の表示方法。
【請求項５】
請求項１に記載の計算機情報の表示方法において、前記第１の計算機のディスプレイに表示された修正画面に対する操作イベントを受け付け、前記操作イベントを前記第２の計算機に送信し、前記第２の計算機において、前記受信した操作イベントが前記第１の計算機情報のうち端末制御を意味する情報への入力である場合に、前記第２の計算機から前記第１の計算機に対して端末制御命令を送信することを特徴とする計算機情報の表示方法。
【請求項６】
請求項２に記載の計算機情報の表示方法において、前記第１の計算機のディスプレイに表示された修正画面に対する操作イベントを受け付け、前記受信した操作イベントが前記透過ウィンドウで表示した第１の計算機情報のうち端末制御を意味する情報への入力である場合に、前記端末制御情報に対応する制御を実行することを特徴とする計算機情報の表示方法。
【請求項７】
請求項１に記載の計算機情報の表示方法において、前記第２の計算機の画面情報に追加する前記計算機情報を表示する領域は、背景が透けて見える透過ウィンドウであることを特徴とする計算機情報の表示方法。
【請求項８】
請求項１又は請求項２に記載の計算機情報の表示方法において、前記計算機情報は、第１の計算機のバッテリーに関する情報であることを特徴とする計算機情報の表示方法。
【請求項９】
請求項１又は請求項２に記載の計算機情報の表示方法において、前記計算機情報は、第１の計算機の音量に関する情報であることを特徴とする計算機情報の表示方法。
【請求項１０】
請求項１又は請求項２に記載の計算機情報の表示方法において、前記計算機情報は、第１の計算機のディスク容量やメモリ容量などのシステムインベントリ情報であることを特徴とする計算機情報の表示方法。
【請求項１１】
請求項１又は請求項２に記載の計算機情報の表示方法において、前記計算機情報は、第１の計算機と第２の計算機を接続したネットワークの状態を示す情報であることを特徴とする計算機情報の表示方法。
【請求項１２】
請求項１又は請求項２に記載の計算機情報の表示方法において、前記計算機情報は、第２の計算機から第１の計算機へのデータ転送を示す情報であることを特徴とする計算機情報の表示方法。
【請求項１３】
第１の計算機と第２の計算機をネットワークで接続し、第２の計算機の画面情報を第１の計算機のディスプレイに表示する計算機情報の表示システムであって、
第１計算機の計算機情報を、第１の計算機から第２の計算機へ送信する通信モジュールと、
第２の計算機で、前記計算機情報を、第２の計算機の画面情報に追加する画面合成処理部と、
前記計算機情報を追加した第２の計算機の画面情報を、
第２の計算機から第１の計算機へ送信する通信制御部と、
前記第２の計算機の画面情報を第１の計算機のディスプレイ上に表示する表示制御部とを備えたことを特徴とする計算機情報の表示システム。
【請求項１４】
第１の計算機と第２の計算機をネットワークで接続し、第２の計算機の画面情報を第１の計算機のディスプレイに表示する計算機情報の表示システムであって、
第１の計算機に、
第２の計算機から画面情報を受信する通信モジュールと、
前記第２の計算機の画面情報に、第１計算機の計算機情報を表示する透過ウィンドウ描画を追加する画面合成処理部と、
前記計算機情報を追加した第２の計算機の画面情報を、
ディスプレイ上に表示する表示制御部とを備えたことを特徴とする計算機情報の表示システム。
【請求項１５】
他の計算機の画面情報を表示する端末において、
端末のハードウェア情報を取得し、
前記取得したハードウェア情報を他の計算機へ送付し、
前記送付したハードウェア情報の少なくとも一部を前記他の計算機の画面情報に追加した修正画面情報を前記他の計算機から受け取り、
前記受け取った修正画面情報を表示することを特徴とする端末。
【請求項１６】
請求項１５の端末において、
前記ハードウェア情報は、端末のバッテリーに関する情報、端末の通信状況に関する情報、端末のCPU使用率に関する情報、端末の記憶装置使用状況に関する情報の少なくとも一つを含むことを特徴とする端末。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、有線、無線、携帯電話やＰＨＳを利用した通信網などで構成されるネットワークに接続したコンピュータ間で、一方（例えば、手元）のコンピュータのディスプレイ上に自身のコンピュータのマシン情報と他方（例えば、遠隔地）のコンピュータの画面情報とをマージして表示するためのシステムおよび方法に関するものである。
【背景技術】
【０００２】
ネットワークで接続された遠隔地にある端末の画面情報を手元にある端末のディスプレイ上に表示することで、手元にある端末を使って遠隔地の端末を操作したり、遠隔地の端末を監視したり、遠隔地と画面情報を共有する技術が広く知られている。
【０００３】
【特許文献１】特許２７５３２７７号
【発明の開示】
【発明が解決しようとする課題】
【０００４】
通常のパソコンのディスプレイ上には、端末およびオペレーティングシステムの状態や設定情報を常時表示する領域（以降、この表示領域をタスクトレイと呼ぶ）やプログラムやアプリケーションを起動するアイコンや、端末のシャットダウンやリブートなど端末を制御するためのアイコンを表示する領域などが存在し、端末およびオペレーティングシステムの現在時刻や音声出力状態、ネットワークの接続状態、電源の状態などの状態確認や、プログラムの起動や端末やオペレーティングシステムの制御を行うことができる。
【０００５】
しかしながら、遠隔地にある端末の画面情報を手元にある端末のディスプレイ上に表示するシステムでは、ディスプレイ上には遠隔地にある端末の情報が表示され、手元の端末の情報が表示されない。あるいは表示されても、遠隔地の端末の情報と手元の端末の情報の区別がつかず、見難い。さらには、手元にある端末の情報を遠隔地の端末の画面情報に重ねて表示させると、重複する部分の画面の操作性や視認性が悪くなり、非表示にすると手元の端末の情報がわからず、バッテリー切れやディスク・メモリ不足などに気づくのが遅れ、大切なデータを失ってしまう危険にさらされるといった問題があり、手元の端末のプログラム起動やシャットダウンやリブートなどの端末制御を行うためには、「Ｅｓｃ」や「Ｃｔｒｌ＋Ａｌｔ＋Ｄｅｌ」キーなどの制御キーを押して、割り込みを行わなくてはできないなど、手元の端末自体の制御を行う際の操作性が悪いなどの種々の問題がある。
【０００６】
手元にある端末のディスプレイ上に表示した画面の操作性・視認性を損ねることなく、遠隔地の端末の画面情報と手元の端末の情報の両方を表示することを課題とする。
【課題を解決するための手段】
【０００７】
本発明では、前述の課題を解決するため、手元にある端末の状態や設定情報、プログラムの起動アイコンや端末の制御アイコンなど（以降、端末情報と称す）を遠隔地の端末に送信し、遠隔地の端末側で受信した端末情報を画面情報の適切な領域に表示し、加工後の画面情報を手元にある端末側に送信し、手元にある端末のディスプレイ上に表示する手段を提供する。
【０００８】
手元にある端末の端末情報を遠隔地の端末に送信し、遠隔地の端末側の画面上に表示する。これにより、手元にある端末のディスプレイ上では、遠隔地の端末の画面表示領域に手元の端末の端末情報を表示させることができる。具体的には、手元の端末のオペレーティングシステム上で、手元の端末の状態および設定情報（端末情報）を、オペレーティングシステムの命令を捕捉あるいはＡＰＩ（Ａｐｌｉｃａｔｉｏｎ Ｐｒｏｇｒａｍ Ｉｎｔｅｒｆａｃｅ）を使用することにより取得する。手元の端末で取得した端末情報を、ある一定時間ごと、あるいは遠隔地の端末への操作制御情報などの送信時、あるいは情報の変更イベントを受信した時などに、遠隔地の端末に送信する。遠隔地の端末では、受信した端末情報を遠隔地の端末のオペレーティングシステムのタスクトレイあるいは遠隔地の端末の画面上に透過ウィンドウとして表示する。また、手元の端末を制御するためのアイコン（プログラム起動やシャットダウン、リブートなど）は、手元の端末から情報を取得して遠隔地の端末に送信したものを表示してもよいし、遠隔地の端末側であらかじめ決められたアイコンを表示するようにしてもよい。
【０００９】
表示した端末情報は、遠隔地の端末の画面情報の一部として手元の端末に転送され、遠隔地の端末の画面表示領域の一部として表示される。
【００１０】
手元の端末側のキーボードやマウス入力は、遠隔地の端末への画面操作情報として補足し、遠隔地の端末に送信する。
【００１１】
遠隔地の端末では、キーボードやマウス入力が手元の端末の端末情報の表示アイコンへの入力である場合、手元の端末から取得した端末情報の詳細情報を表示し、プログラムや端末の制御アイコンへの入力である場合、手元の端末に対してプログラム起動や端末制御指示であることを返信する。手元の端末では、遠隔地の端末からプログラム起動や端末制御指示を受信し、手元の端末側で指定されたプログラムを起動する。あるいは、指定されたシャットダウンやリブートの処理を実施する。
【００１２】
また、手元にある端末の端末情報を遠隔地の端末に送信することなく、手元にある端末の端末情報を、背景が透けて見える透過ウィンドウに表示する手段を提供する。
【００１３】
この場合は、手元の端末側で、受信した遠隔地の端末の画面情報に、自身の端末情報を透過ウィンドウ表示に加工した画面情報を重ねて表示する。
【００１４】
手元の端末側のキーボードやマウス入力が、透過ウィンドウ内のアイコンに対しての入力である場合、遠隔地の端末への画面操作情報として補足せず、手元の端末自身への入力として補足する。表示アイコンへの入力であれば端末情報の詳細情報を表示し、プログラムや端末の制御アイコンへの入力であれば指定されたプログラム起動やシャットダウン、リブートの処理を実施する。
【発明の効果】
【００１５】
本発明により、ネットワークで接続された遠隔地にある端末の画面情報を手元にある端末のディスプレイ上に表示することで、手元で遠隔地の端末を操作したり、遠隔地の端末を監視したり、遠隔地と画面情報を共有するシステムにおいて、ディスプレイ上に手元の端末の状態や設定情報、プログラム起動や端末制御を行うためのアイコンなどを遠隔地の端末の画面表示領域に表示することができ、手元の端末の状態および設定情報を容易に確認したり、または、手元の端末のプログラム起動や端末制御を実行したりすることができる。
【発明を実施するための最良の形態】
【００１６】
以降、遠隔地の端末をエージェント端末、手元の端末をコントローラ端末と称して説明する。
【００１７】
以下、本発明を実施するための最良の形態を図面に基づいて詳細に説明する。
【００１８】
図１は、本発明における一実施事例であるリモート操作システムの外観を示すものである。
【００１９】
実施例では、通信回線１０３は無線、ネットワーク１０４は有線であることを想定しているが、実際のシステムにおいてはこの限りではない。
【００２０】
コントローラ端末１０１は、無線ＬＡＮカードあるいは携帯通信カード１０７などを接続して、通信回線１０３、ネットワーク１０４を介しエージェント端末１０２と通信を行う。コントローラ端末１０１のディスプレイには、エージェント端末１０２のディスプレイに表示される画面と同一画面の情報を表示し、キーボード・マウス入力を、コントローラ端末１０１からエージェント端末１０２に送信し、エージェント端末１０２に対する入力として実行する。エージェント端末１０２は、コントローラ端末１０１からのキーボード・マウス入力により、エージェント端末１０２のオペレーティングシステムおよびエージェント端末１０２上で動作するアプリケーションに対し操作を実行することができる（１０５）。コントローラ端末１０１では、エージェント端末１０２の画面情報をコントローラ端末１０１へ送信する（１０６）。多くのアプリケーションでは、ディスプレイ上に実行結果が表示されるが、このディスプレイ上の画面情報をエージェント端末１０２からコントローラ端末１０１に送信し、コントローラ端末１０１のディスプレイ上に表示することにより、実行結果をコントローラ端末１０１で確認することができる。
【００２１】
前記構成においては、エージェント端末１０２のディスプレイ、キーボード、マウスはコントローラ端末１０１で代行可能なため、エージェント端末１０２側にはディスプレイ、キーボード、マウスがなくても良い。
【００２２】
図２は、本実施例のコントローラ端末とエージェント端末間で実行する処理およびデータの流れについての例を示すものである。
【００２３】
コントローラ端末とエージェント端末間で通信を行うために、コントローラ端末よりエージェント端末に対し接続要求の通知を行う（２０１）。接続要求通知を受信したエージェント端末では、セッションを生成し、ユーザの認証を行い（２０２）、コントローラ端末に対し接続許可の応答を送信する（２０３）。エージェント端末は、全画面の画面情報を取得し（２０４）、コントローラ端末に対し送信する（２０５）。コントローラ端末では、受信した全画面の画面情報をディスプレイ上に描画し（２０６）、エージェント端末に対し描画完了の通知を行う（２０７）。
【００２４】
エージェント端末では、画面変更に関する描画命令捕捉と非同期に、一定時間ごとに、エージェント端末とコントローラ端末間の通信速度を計測し、取得した通信情報をバッファに格納する（２０８）。通信情報の内容に関しては図７、通信情報の取得処理に関しては図１４にて後述する。
【００２５】
同様に、オペレーティングシステムからの電源変更のイベントを捕捉し、取得した電源情報をバッファに格納する（２０９）。電源情報の内容については図５、電源情報の取得処理については図１２にて後述する。また、オペレーティングシステムおよびドライバからスピーカーに関する設定情報を取得しバッファに格納する（２１０）。取得するスピーカー情報については図６、スピーカー情報の取得処理については図１３にて後述する。
【００２６】
コントローラ端末で、キーボードやマウスに対する操作が発生した際に、キーボード・マウスの入力イベントを捕捉し、操作制御情報として格納する（２１１）。
【００２７】
コントローラ端末から、バッファに格納済みの電源情報、通信情報およびスピーカー情報からなるコントローラ端末の情報（以降、これらの情報を纏めて端末情報と呼ぶ）を、エージェント端末に対し送信する場合は、キーボード・マウスの入力イベントを捕捉した契機にこれらの操作制御情報とともにエージェント端末に端末情報を送信する（２１２）。キーボード・マウスの入力イベントの捕捉から端末情報の送信までの流れについては図１６にて後述する。
【００２８】
ここでは、キーボード・マウス入力イベントを契機に端末情報を送信するようにしているが、端末情報の変更イベントを補足した契機で端末情報を送信するようにしてもよいし、一定時間毎に送信してもよく、端末情報をエージェント端末に通知すればよい。
【００２９】
エージェント端末では、受信した操作制御情報を解析し、キーボード・マウスイベントとしてオペレーティングシステムに入力する。また、端末情報を解析し、透過ウィンドウまたはビットマップアイコンとして、エージェント端末の画面上の所定の位置に画面情報を描画または再描画する（２１７）。画面情報が変更されると、画面変更に関する描画命令を捕捉し、変更部分の画面情報を取得する（２１５）。取得した変更部分の画面情報をコントローラ端末に対し送信する（２１６）。コントローラ端末では、受信した変更部分の画面情報をディスプレイ上に描画し（２１７）、エージェント端末に対し描画完了の通知を送信する（２１８）。
【００３０】
この変更部分の画面情報の取得、送信、およびコントローラ端末での描画処理は、画面情報が変更されるたびに行う。
【００３１】
透過ウィンドウやビットマップアイコンを表示する位置、または表示する領域に関する情報はエージェント端末のメモリやハードディスクなどの記憶装置に格納されており、当該所定の位置または領域に透過ウィンドウやビットマップアイコンを描画する。
【００３２】
なお画面情報が変更されない場合には、変更部分の画面情報の取得および送信は行わない。
【００３３】
以上、説明した２０８、２０９、２１０、２１１、２１５の処理は、各々契機となるイベント発生時に非同期に行う。
【００３４】
コントローラ端末で、キーボードやマウスに対する操作を補足（２１９）し、操作制御情報とともに端末情報をエージェント端末に端末情報を送信する（２２０）。エージェント端末では、受信した操作制御情報を解析し、エージェント端末自身の画面に対する入力である場合は、上記同様に、キーボード・マウスイベントとしてオペレーティングシステムに入力（２２１）し、端末情報を解析し、変更があれば、透過ウィンドウまたはビットマップアイコンとして画面情報を再描画（２２２）し、変更部分の画面情報を取得し（２２３）、送信する（２１６）。
【００３５】
エージェント端末で受信した操作制御情報を解析し、コントローラの端末情報に関連する透過ウィンドウまたはビットマップアイコンへの入力である場合、表示アイコンへの入力であれば、コントローラ端末から受信した情報を指定されたアイコンに対応させて表示し、端末制御アイコンへの入力であれば、コントローラ端末に対して端末制御指示を送信（２２４）する。コントローラ端末は端末制御指示を受信すると、指示に従い端末制御処理（２２５）を行う。プログラム起動の指示であれば、プログラムを起動（２２６）し、シャットダウンまたはリブート指示であれば、終了処理を開始し（２２７）、オペレーティングシステムに対して、リブート・シャットダウンを指示する（２３２）。
【００３６】
リモート操作システムを終了する場合、コントローラ端末からの終了処理開始（２２７）によって、コントローラ端末からエージェント端末に対して接続終了通知を送信する（２２８）。エージェント端末は、接続終了通知を受取ると応答を返し（２２９）、セッションを破棄する（２３０）。コントローラ端末では、エージェント端末の応答を受け、プログラムを終了する（２３１）。
【００３７】
図２では、コントローラ端末の端末情報をエージェント端末に送信して表示する場合の方法について説明したが、コントローラ端末の端末情報をエージェント端末に送信せず、エージェント端末から画面情報を受信し、コントローラ端末でコントローラ端末自身の情報を透過ウィンドウとして表示することもできる。
【００３８】
この場合は、コントローラ端末の端末情報をエージェント端末に送信せず、コントローラ端末でコントローラ端末自身の情報を透過ウィンドウに加工し、受信したエージェント端末の画面情報に重ねて表示する。コントローラ端末で補足するキーボードやマウスに対する操作は、透過ウィンドウ内の端末情報への入力である場合、表示アイコンへの入力であれば、指定されたアイコンに対応させて端末の詳細情報を表示し、端末制御アイコンへの入力であれば、指定されたアイコンに対応する端末制御処理を行う。プログラム起動の指示であれば、プログラムを起動し、シャットダウンまたはリブート指示であれば、終了処理を開始し、オペレーティングシステムに対して、リブート・シャットダウンを指示する。
【００３９】
エージェント端末の画面情報への入力である場合は、エージェント端末に対して操作制御情報として送信する。
【００４０】
図３は、本実施例のコントローラ端末とエージェント端末のモジュール構成およびデータ、制御の流れを示すものである。この図では、コントローラ端末で端末情報および操作制御情報を取得し、エージェント端末へデータを送信しエージェント端末の画面上に端末情報が表示されるまでのデータの流れ、制御の流れを示している。
【００４１】
エージェント端末３０１には、コントローラ端末３１１との通信を制御する通信制御部３０４、オペレーティングシステム３０３からディスプレイドライバ３０７へ出力される描画命令を補足するディスプレイドライバフック制御部３０５、および各制御部を統括制御し、前記コントローラ端末の端末情報および操作制御情報を解析、実行、および、前記ディスプレイドライバフック制御部から描画命令を取得、加工を行う基本制御部３０６から構成されるソフトウェアが動作する。描画時には図示しない不揮発性の外部記憶装置又は不揮発性の内部記憶装置に格納された情報を用いて描画する。
【００４２】
前記エージェント端末上の基本制御部３０６では、コントローラ端末より受信した情報（操作制御情報、通信情報、スピーカー情報および電源情報など）３３６を解析する。解析した後の操作制御情報は、コントローラ端末より受信した情報の表示領域に対する入力でなければ、オペレーティングシステム３０３、アプリケーション３０２に対し入力、実行される。コントローラ端末より受信した情報の表示領域に対する入力の場合、表示アイコンへの入力であれば、通信情報、スピーカー情報および電源情報等は、修正画面情報として基本制御部からオペレーティングシステムに渡される描画命令となる（３３７）。端末制御アイコンへの入力であれば、コントローラ端末に対して端末制御指示を送信する（３３８）。
【００４３】
基本制御部３０６内に、図示しない画面合成処理部を含み、画面合成処理部はエージェント端末の画面情報にコントローラ端末より受信した情報３０６を基にした修正を加えるように構成することもできる。この場合、エージェント端末のオペレーティングシステムが保持する画面情報を変更することなく修正画面を作成できる。
【００４４】
コントローラ端末３１１には、エージェント端末３０１との通信を行う通信モジュール３１２、通信モジュールを制御する通信モジュールドライバ３１３、サウンドを制御するサウンドドライバ３１４、電源モジュール３１６を制御する電源モジュールドライバ３１５、キーボードを制御するキーボードドライバ３１９、マウスを制御するマウスドライバ３２２、エージェント端末３０１からの描画命令を復元しオペレーティングシステムに対して描画命令を実行する表示制御部３２０、オペレーティングシステム３１８からの描画命令により実際の描画データを表示するディスプレイドライバ３２１、および各制御部を統括制御する基本制御部３１７から構成されるソフトウェアが動作する。
【００４５】
前記コントローラ端末の基本制御部３１７では、キーボードドライバ３１９、マウスドライバ３２２を通じ補足されたキーボード・マウスに関する入力イベント（３３４、３３５）は、通信モジュール３１２を通じ前記エージェント端末に送信される。また、基本制御部３１７では、オペレーティングシステム３１８から通信情報（３３１）、スピーカー情報（３３２）、電源情報（３３３）を、定期的もしくオペレーティングシステム３１８からの変更メッセージ受信時に取得しておき、操作制御情報の送信タイミングで操作制御情報と共に送信する。
【００４６】
コントローラ端末にも不揮発性の記憶装置を備えエージェント端末から受信した情報を格納し、オフラインでの作業に備えることも可能であるが、揮発性の記憶装置でのみ処理することによりコントローラ端末の盗難等に対するセキュリティを上げることもできる。
【００４７】
図３では、コントローラ端末の端末情報をエージェント端末に送信して表示する場合の方法について説明したが、コントローラ端末の端末情報をエージェント端末に送信せず、エージェント端末から画面情報を受信し、コントローラ端末でコントローラ端末自身の情報を透過ウィンドウとして表示することもできる。
【００４８】
この場合は、図示していないがコントローラ端末の基本制御部に含まれる画面合成処理部でコントローラ端末自身の情報を透過ウィンドウに加工し、受信したエージェント端末の画面情報に重ねて表示する。コントローラ端末で補足するキーボードやマウスに対する操作は、透過ウィンドウ内の端末情報への入力である場合は基本制御部（３１７）で補足し、表示アイコンへの入力であれば、指定されたアイコンに対応させて端末の詳細情報を表示し、端末制御アイコンへの入力であれば、指定されたアイコンに対応する端末制御処理を行う。表示処理に関しては、描画命令として表示制御部に渡す（３３９）。プログラム起動の指示であれば、プログラムを起動し、シャットダウンまたはリブート指示であれば、終了処理を開始し、オペレーティングシステムに対して、リブート・シャットダウンを指示する（３４０）。
【００４９】
エージェント端末の画面情報への入力である場合は、エージェント端末に対して操作制御情報として送信する（３３６）。
【００５０】
図４は、前記エージェント端末で取得した描画情報が、前記コントローラ端末に送信、表示されるまでのデータの流れ、制御の流れを示している。
【００５１】
前記エージェント端末上のオペレーティングシステム３０３より描画命令４０１が転送された場合、前記ディスプレイドライバフック制御部にて変更された画面データ部分の描画命令が捕捉される。捕捉された描画命令は基本制御部３０６にて最適化され、通信制御部３０４を通じ前記コントローラ端末に送信される。
【００５２】
前記コントローラ端末上の基本制御部３１７にて、送信された描画命令は、前記ディスプレイドライバフック制御部にて捕捉された描画命令に復元される。復元された描画命令は、オペレーティングシステム３１８およびディスプレイドライバ３２１を通じディスプレイに表示される。
【００５３】
コントローラ端末からエージェント端末に対してコントローラ端末情報（操作制御情報、通信情報、スピーカー情報および電源情報）を送信せず、受信したエージェント端末の画面に、コントローラ端末側で自身の端末情報を加工して表示する場合は、基本制御部において、オペレーティングシステム３１８から通信情報（４０４）、スピーカー情報（４０５）、電源情報（４０６）を取得し、受信画面上に端末情報が表示されるように制御する（４０７）。
【００５４】
図４の例ではエージェント端末とコントローラ端末に同じ画面を表示するために、コントローラ端末へ画面表示用の画面情報（描画命令）を送付するときには、通信情報、スピーカー情報および電源情報等のコントローラ端末情報は既に画面情報に含まれている例を説明したが、コントローラ端末情報はコントローラ端末にだけ表示させるために、図３の処理でコントローラ端末からコントローラ端末情報を受信したときに画面情報へ反映させるのではなく、エージェント端末で作成した画面情報をコントローラ端末へ送付する前にエージェント端末の基本制御部（３０６）に含まれる図示しない画面合成処理部で反映させてエージェント端末へ送付することもできる。
【００５５】
図５は、コントローラ端末上で基本制御部にてオペレーティングシステムより取得した電源情報を一時的に保存しておくための保存用バッファのデータを示している。電源情報は、取得時点におけるバッテリーの残りパーセンテージを示すバッテリー残量５０１、残りのバッテリーでコントローラ端末が駆動可能な時間を示す残り駆動時間５０２、バッテリーがＡＣ電源に接続されているか否かを示すＡＣ電源接続状態および、これらのデータが更新されたかどうかを示す更新フラグ５００から構成される。
【００５６】
図６は、コントローラ端末上で基本制御部にてオペレーティングシステムより取得したスピーカー情報を一時的に保存しておくための保存用バッファのデータを示している。スピーカー情報は、取得時点におけるオペレーティングシステム上の音量のボリュームを示す音量６０１、オペレーティングシステム上の音量がミュート（消音）状態であるかどうかを示すスピーカー状態６０２および、これらのデータが更新されたかどうかを示す更新フラグ６００から構成される。またスピーカー状態６０２は、コントローラ端末の最大通信帯域がある一定以下の場合に、スピーカーの再生不可を示すフラグが設定される。
【００５７】
図７は、コントローラ端末上で基本制御部にてオペレーティングシステムより取得した通信情報を一時的に保存しておくための保存用バッファのデータを示している。通信情報は、取得時点におけるオペレーティングシステム上の最大通信帯域を示す７０１、またエージェント端末とコントローラ端末間におけるデータの転送速度を示す通信速度７０２、コントローラ端末が無線により接続されている場合に、電波の強度を示す電波強度７０３、コントローラ端末が無線か有線かどうかの接続状態を示すネットワークタイプ７０４および、これらのデータが更新されたかどうかを示す更新フラグ７００から構成される。
【００５８】
図８は、コントローラ端末よりエージェント端末に対し送信される操作制御情報および端末情報の送信用のデータ形式を示している。この送信用データは、操作制御情報８０１、電源情報８０２、スピーカー情報８０３、通信情報８０４および端末制御情報８０５から構成され、８０２〜８０５の各情報が更新された場合、更新された情報のみ操作制御情報８０１に付加する形で送信される。操作制御情報８０１は、コントローラ端末のキーボード・マウスの入力を捕捉し符号化したもので、受信したエージェント端末上でこの情報を復元しアプリケーションおよびオペレーティングシステムに対し実行することができる。８０２〜８０５の各情報は、図５〜図７で示した一時保存用バッファのデータおよび図１０に追加された端末制御情報が格納され、各情報の先頭バイトには格納されている情報の内容を示すフラグ（図では‘Ｂ’、‘Ｓ’、‘Ｃ’、‘Ｐ’）を付加し、エージェント端末ではこのフラグにより後続のデータの内容を把握することができる。
【００５９】
図９は、エージェント端末からコントローラ端末に対し送信される端末制御指示の送信用のデータ形式を示している。この送信用データは、種別９０１、制御ＩＤ９０２から構成され、画面情報を送信する場合の電文と区別するための種別９０１に、後述する図１０の端末制御情報の定義テーブルで定義されている制御アイコンＩＤ９０２を付加して送信される。
【００６０】
図１０は、端末制御情報の定義テーブルを示している。端末制御情報は、端末制御アイコンを一意に識別するための制御アイコンＩＤ１００２、プログラム名１００３、実際に制御処理する際に実行される制御コマンド１００４、画面上に表示する場合に使用されるアイコン１００５および、これらのデータが更新されたかどうかを示す更新フラグ１００１から構成される。
【００６１】
図１１は、コントローラ端末とエージェント端末間の時刻合わせの方法および通信速度の算出方法について示している。
【００６２】
まず、コントローラ端末とエージェント端末の時刻合わせの手順について説明する。コントローラ端末からエージェント端末に対し１つの目のダミーデータとして０ＫＢ、２つ目のダミーデータとして８０ＫＢのサイズのデータを、同時に送信する（１１０３、１１０４）。このとき、送信時刻Ｔｉｍｅ１（１１０１）を取得し、送信と同時にタイマー（ｂ）をスタートする。
【００６３】
エージェント端末は、１つ目のダミーデータを受信したときに、タイマー（ａ）をスタートする。２つの目のダミーデータの受信完了を受け、すぐに２つ目のダミーデータをコントロール側に返送する（１１０７）。このとき、１つ目のダミーデータを受信してからの経過時間ａ（１１０５）と送信時刻であるＴＩＭＥ（１１０６）情報を付加して送信する。
【００６４】
コントロール端末では、ダミーデータの送信時刻Ｔｉｍｅ１（１１０１）、経過時間ｂ（１１０２）と、受信した経過時間ａ（１１０５）と送信時刻であるＴＩＭＥ（１１０６）コントロール端末とエージェント端末の時刻のずれを計算する。
【００６５】
時刻のずれ＝{（Ｔｉｍｅ１＋ｂ）−（ＴＩＭＥ＋ｂ−ａ）}または、
時刻のずれ＝{（Ｔｉｍｅ１）−（ＴＩＭＥ−ａ）}
時刻のずれが、＋であれば、コントローラ端末の時刻がエージェント端末の時刻より進んでおり、時刻のずれが、−であれば、コントローラ端末の時刻がエージェント端末の時刻より遅れているため、コントローラ端末の時刻をエージェント端末に合わせるため、コントローラ端末の時間調整時点の時刻Ｔｉｍｅ２（１１０８）に端末間の時刻のずれを反映する。
【００６６】
Ｔｉｍｅ２＝Ｔｉｍｅ２−{（Ｔｉｍｅ１＋ｂ）−（ＴＩＭＥ＋ｂ−ａ）}または、
Ｔｉｍｅ２＝Ｔｉｍｅ２−{（Ｔｉｍｅ１）−（ＴＩＭＥ−ａ）}
以上により、コントローラ端末の時刻をエージェント端末の時間に合わせることができる。
【００６７】
次に、コントローラ端末とエージェント端末間の通信速度の算出方法について説明する。前述の時刻合わせの手順によりコントローラ端末とエージェント端末間の時刻の同期が取れている場合、次の手順で求めることができる。エージェント端末から送信されるデータと共に、エージェント端末上で送信を開始した時刻Ｔ１（１１１０）と、送信データのサイズを送信する（１１１１）。コントローラ端末でデータを受信完了した時刻をＴ２（１１１２）とすると、コントローラ端末とエージェント端末間の通信速度はおおよそ、データ量／（Ｔ２−Ｔ１）で表すことができる（１１１３）。
【００６８】
送信データのサイズは、実際の送信データから算出するようにしてもよい。
【００６９】
図１２は、コントローラ端末上で、電源情報を取得し一時保存用バッファに格納するまでの流れをフローチャートで示したものである。コントローラ端末の基本制御部では、エージェント端末との接続後に、ＡＰＩを実行することによりバッテリー残量、残り駆動時間、ＡＣ電源の接続状態に関する情報をオペレーティングシステムから取得する（Ｓ１２０１）。取得した情報は、電源情報一時保存用バッファに図５に示す形式で保存し（Ｓ１２０２）、オペレーティングシステムからの電源状態の変更イベント待ちで待機する（Ｓ１２０３）。電源状態が変更された場合、オペレーティングシステムから変更イベントが発生するため、このイベントを捕捉し（Ｓ１２０４）、Ｓ１２０１と同様の方法で電源情報を取得する（Ｓ１２０５）。取得した情報は、電源情報一時保存用バッファに保存し（Ｓ１２０６）、バッファの先頭にある更新フラグをオンにする（Ｓ１２０７）。保存後は電源状態の変更イベント待ちで待機し、エージェント端末とのセッションが削除されるまで、変更イベント捕捉毎に取得、保存が繰り返される。
【００７０】
図１３は、コントローラ端末上で、スピーカー情報を取得し一時保存用バッファに格納するまでの流れをフローチャートで示したものである。コントローラ端末の基本制御部では、エージェント端末との接続後に、オペレーティングシステムから最大通信帯域の情報をＡＰＩを実行することにより取得し、最大通信帯域が任意のある一定速度（図では５７ｋｂｐｓとしている）以上か否かを判定する（Ｓ１３０１）。
【００７１】
ある一定速度以上の場合（Ｓ１３０１−ＹＥＳ）には、ＡＰＩを実行することにより、オペレーティングシステムのスピーカーの状態、音量に関する情報を、オペレーティングシステムから取得する（Ｓ１３０２）。取得した情報は、スピーカー情報一時保存用バッファに保存されているスピーカーの情報と比較を行い（Ｓ１３０３）、異なっていた場合（Ｓ１３０３−ＹＥＳ）には取得した情報を、スピーカー情報一時保存用バッファに図６に示す形式で保存し（Ｓ１３０４）、バッファの先頭にある更新フラグをオンにする（Ｓ１３０５）。取得した情報と一時保存用バッファに保存されていた情報が同じ場合（Ｓ１３０３−ＮＯ）には、一時保存用バッファおよび更新フラグは更新しない。その後任意の一定時間待機し（Ｓ１３０６）、一定時間経過後に再度スピーカー情報の取得する。エージェント端末とのセッションが削除されるまで、一定時間毎に取得、保存が繰り返される。
【００７２】
最大通信帯域がある一定速度以下の場合（Ｓ１３０１−ＮＯ）には、スピーカー情報のスピーカー状態にサウンド再生不可と設定し（Ｓ１３０７）、一時保存用バッファに格納（Ｓ１３０８）、更新フラグをオンにし（Ｓ１３０９）終了する。
【００７３】
図１４は、コントローラ端末上で、通信情報を取得し一時保存用バッファに格納するまでの流れをフローチャートで示したものである。コントローラ端末の基本制御部ではエージェント端末との接続後に、コントローラ端末とエージェント端末の各オペレーティングシステム上の時刻の同期を取り、時刻合わせを行う（Ｓ１４０１）。時刻合わせの後にコントローラ端末からエージェント端末に対しダミーデータを送信し、実際のデータの転送速度を計算し通信速度を求める（Ｓ１４０２）。時刻合わせの方法および通信速度の算出方法については、一例を図１１にて説明したが、この方法に限るということではない。次にＡＰＩを実行することにより、最大通信帯域、ネットワークタイプおよび電波強度に関する情報を、オペレーティングシステムから取得する（Ｓ１４０３）。Ｓ１４０２とＳ１４０３で取得した情報は、通信情報一時保存用バッファに保存されている情報と比較を行い（Ｓ１４０４）、異なっていた場合（Ｓ１４０４−ＹＥＳ）には取得した情報を、通信情報一時保存用バッファに図７に示す形式で保存し（Ｓ１４０５）、バッファの先頭にある更新フラグをオンにする（Ｓ１４０６）。取得した情報と一時保存用バッファに保存されていた情報が同じ場合（Ｓ１４０４−ＮＯ）には、一時保存用バッファおよび更新フラグは更新しない。その後任意の一定時間待機し（Ｓ１４０７）、一定時間経過後に再度スピーカー情報の取得する。エージェント端末とのセッションが削除されるまで、一定時間毎に取得、保存が繰り返される。
【００７４】
図１５は、コントローラ端末・エージェント端末共通で、キーボード・マウスの入力イベントを解析し、実際の処理を実行するまでの流れをフローチャートで示したものである。
【００７５】
キーボード/マウス入力イベントが特定領域に対してであるか判定する（１５０１）。ここでいう特定領域とは、コントローラ端末の端末情報を表示するための領域であり、タスクトレイや透過ウィンドウなどに対する入力であるかどうかを判定する。特定領域への入力でない場合（Ｓ１５０１−ＮＯ）、エージェント画面に対する入力処理を行う（１５０２）。コントローラ端末でこの処理を行う場合は、捕捉した操作イベントを符号化し、操作制御情報として送信用バッファに格納する。エージェント端末でこの処理を行う場合は、操作イベントをアプリケーションあるいはオペレーティングシステムに対して入力する。特定領域への入力である場合（Ｓ１５０１−ＹＥＳ）、端末制御のアイコンに対する入力であれば（Ｓ１５０３−ＹＥＳ）、指定された端末制御アイコンに対応する制御アイコンＩＤを取得（１５０５）し、端末制御情報定義テーブルを探索（１５０６）してコントローラ端末に対する制御処理を行う（１５０７）。コントローラ端末でこの処理を行う場合は、端末制御情報定義テーブルに定義されている制御コマンドをオペレーティングシステムに対して入力する。シャットダウンや再起動指示の場合は、エージェント端末に終了を通知し、プログラムを終了する。エージェント端末でこの処理を行う場合は、図９に示す端末制御指示をコントローラ端末に対して送信する。操作イベントをアプリケーションあるいはオペレーティングシステムに対して入力する。端末制御のアイコンに対する入力でなければ（Ｓ１５０３−ＮＯ）、指定された端末情報アイコンに対応するコントローラ端末の詳細情報を表示する（１５０４）。
【００７６】
図１６は、コントローラ端末上で、キーボード・マウスの入力イベントを捕捉し、送信用バッファのデータを送信するまでの流れをフローチャートで示したものである。
【００７７】
コントローラ端末の基本制御部では、キーボード・マウスの入力イベント待ちで待機し（Ｓ１６０１）、操作イベント発生時にその操作イベントを捕捉する（Ｓ１６０２）。図１５で示したフローチャ−トに従い処理を実行する（Ｓ１６０３）。電源情報を送信用バッファに格納する手順は、電源情報一時保存用バッファの更新フラグを判定し（Ｓ１６０４）、オンの場合に（Ｓ１６０４−ＹＥＳ）、送信用バッファに電源情報を格納し（Ｓ１６０５）、更新フラグをオフにする（Ｓ１６０６）。更新フラグがオフの場合（Ｓ１６０４−ＮＯ）には、送信用バッファに電源情報を格納せず、電源情報は付加しない。
【００７８】
スピーカー情報および通信情報を送信用バッファに格納する手順についても電源情報と同様の手順となる。一時保存用バッファの更新フラグを判定し（Ｓ１６０７、Ｓ１６１０）、オンの場合に（Ｓ１６０７−ＹＥＳ、Ｓ１６１０−ＹＥＳ）、送信用バッファに情報を格納し（Ｓ１６０８、Ｓ１６１１）、格納した情報の一時保存用バッファの更新フラグをオフにする（Ｓ１６０９、Ｓ１６１２）。更新フラグがオフの場合（Ｓ１６０７−ＮＯ、Ｓ１６１１−ＮＯ）には、送信用バッファに情報を格納せず、格納されない情報は付加しない。以上の手順により情報を送信用バッファに格納し、エージェント端末に対し送信する。
【００７９】
図１７は、エージェント端末上で、コントローラ端末より送信された情報の解析処理をフローチャートで示したものである。
【００８０】
エージェント端末の基本制御部では、コントローラ端末より送信された情報を受信し（Ｓ１７０１）、受信したデータの解析を行う。受信データに操作制御情報以外に端末情報が格納されているか送信データの長さから判定を行い（Ｓ１７０２）、端末情報が格納されている場合（Ｓ１７０２−ＹＥＳ）には、端末情報の先頭バイトに格納されている内容を示すフラグを判定し各情報を取得する。
【００８１】
先頭バイトのフラグが‘Ｂ’である場合（Ｓ１７０３−ＹＥＳ）、後続のデータを電源情報であると判断し、図５のバッファの形式に基づき電源情報を取得する。取得した電源情報のうちＡＣ電源接続状態、バッテリー残量を元に、図２３の電池アイコンテーブルを探索し、電池アイコンおよび電池アイコンの色を取得する（Ｓ１７０４）。取得後、電池アイコンをエージェント端末の画面の所定の位置に描画もしくは再描画する（Ｓ１７０５）。先頭バイトのフラグが‘Ｂ’でない場合（Ｓ１７０３−ＮＯ）には、電源情報に関する情報は更新されなかったと見なし、電池アイコンの描画もしくは再描画はされない。
【００８２】
先頭バイトのフラグが‘Ｓ’である場合（Ｓ１７０６−ＹＥＳ）には、後続のデータをスピーカー情報であると判断し、図６のバッファの形式に基づきスピーカー情報を取得する。取得したスピーカー情報のうちスピーカー状態を元に、図２４のスピーカーアイコンテーブルを探索し、スピーカーアイコンを取得する（Ｓ１７０７）。取得後、スピーカーアイコンをエージェント端末の画面の所定の位置に描画もしくは再描画する（Ｓ１７０８）。先頭バイトのフラグが‘Ｓ’でない場合（Ｓ１７０６−ＮＯ）には、スピーカー情報に関する情報は更新されなかったと見なし、スピーカーアイコンの描画もしくは再描画はされない。
【００８３】
先頭バイトのフラグが‘Ｃ’である場合（Ｓ１７０９−ＹＥＳ）には、後続のデータを通信情報であると判断し、図７のバッファの形式に基づき通信情報を取得する。取得した通信情報のうちネットワークタイプと電波強度を元に、図２５の通信アイコンテーブルを探索し、通信アイコンを取得する（Ｓ１７１０）。取得後、通信アイコンをエージェント端末の画面の所定の位置に描画もしくは再描画する（Ｓ１７１１）。先頭バイトのフラグが‘Ｃ’でない場合（Ｓ１７０９−ＮＯ）には、通信情報に関する情報は更新されなかったと見なし、通信アイコンの描画もしくは再描画はされない。
【００８４】
先頭バイトのフラグが‘Ｐ’である場合（Ｓ１７１２−ＹＥＳ）、後続のデータを端末制御情報であると判断し、図１０のテーブルの形式に基づき端末制御情報を取得する。取得した端末制御情報をエージェント端末で保持している端末制御情報の定義テーブルに追加（１７１３）し、端末制御アイコンを描画もしくは再描画する（Ｓ１７１４）。先頭バイトのフラグが‘Ｐ’でない場合（Ｓ１７１２−ＮＯ）には、端末制御情報に関する情報は更新されなかったと見なし、端末制御アイコンの描画もしくは再描画はされない。
【００８５】
端末情報が格納されていない場合（Ｓ１７０２−ＮＯ）には、電池アイコン、スピーカーアイコン、通信アイコンおよび端末制御アイコンは更新されない。端末情報の解析後、受信データの操作制御情報から、コントローラ端末で符号化されたキーボード・マウス入力を解析し（Ｓ１７１５）、図１５で示したフローチャ−トに従い処理を実行する（Ｓ１７１６）。エージェント端末上の画面情報に変更がある場合（Ｓ１７１７−ＹＥＳ）、ディスプレイドライバフック制御部にて変更部分に関する描画命令を捕捉し（Ｓ１７１８）、変更部分の画面情報としてコントローラ端末に送信する（Ｓ１７１９）。
【００８６】
図１８は、端末情報を表すアイコンを、エージェント端末の画面上のタスクトレイに表示した例を示している。このようにエージェント端末に表示される画面情報は、これまで述べてきた方法により、そのままコントローラ端末の画面上にも表示される。１８０２、１８０４は、エージェント端末のデスクトップ１８０１上のタスクトレイを拡大し表示したものである。１８０２は、エージェント端末のタスクトレイ１８０３の領域に、コントローラ端末のアイコンを表示した例を示している。また、１８０４のように、エージェント端末のタスクトレイアイコンをリモート１８０６、コントローラ端末のアイコンをローカル１８０５として、それぞれの領域を区切り、表示されているアイコンがエージェント端末のものか、コントローラ端末のものか区別できるように表示しても良い。
【００８７】
この場合、アイコンに対する入力があると、オペレーティングシステムから基本制御部へ入力通知がくるので、基本制御部で、コントローラ端末の情報に対応するアイコンであるかどうかを判断し、コントローラ端末の情報に対応するアイコンであれば、制御命令をコントローラ端末に送信する。
【００８８】
透過ウィンドウやビットマップアイコンを表示する位置、または表示する領域に関する情報はエージェント端末のメモリやハードディスクなどの記憶装置に格納されており、当該所定の位置または領域に透過ウィンドウやビットマップアイコンを描画する。
【００８９】
また、この表示位置は変更することも可能である。コントローラ端末でタスクトレイのアイコンをドラッグアンドドロップすることにより、画面上の任意の位置にアイコンを移動する。この移動後の位置情報をコントローラ端末からエージェント端末に送信し、エージェント端末は変更された位置情報を記憶する。これ以降は、変更後の位置にアイコンを表示する。表示する位置だけでなく、表示する領域も自由に変更が可能である。
【００９０】
図１９は、端末情報を示すアイコンおよび、プログラムやコントローラ端末の制御アイコンを、コントローラ端末のデスクトップ上に表示した例を示している。これまで述べてきたように、一旦エージェント端末の画面情報に加工してから、コントローラ端末に送信する場合も考えられるが、これと別に図１９のようにコントローラ端末が自身で端末情報を表示することもできる。１９０１は、コントローラ端末のデスクトップの一部を拡大し表示したものである。コントローラ端末のデスクトップ上では、端末情報を示すアイコン１９０２、プログラムや端末の制御アイコン１９０３は、透過ウィンドウ表示に加工し、コントローラ端末が、受信したエージェント端末の画面情報の上に重ねて表示する。アイコンの背景であるエージェント端末の画面が透けて見える。また１９０２、１９０３はアイコンを選択しドラッグアンドドロップをすることにより、任意の領域に移動させることができる。
【００９１】
コントローラ端末の情報を表示する領域（座標（X,Y）-（X1,Y1））は、エージェント端末自体の描画領域とは区別し、特定の領域としてコントローラ端末のメモリやハードディスクなどの記憶装置上で管理する。この領域に対する入力は、操作制御情報としてエージェント端末へは送信せず、コントローラ端末で補足して処理する。透過ウィンドウ移動時は、記憶装置上の管理座標を更新する。
【００９２】
この場合、キーボードやマウス入力が端末情報の表示アイコン１９０２への入力である場合、取得した端末情報の詳細情報を表示する。表示する内容については、図２０〜図２２にて後述する。プログラムや端末の制御アイコン１９０３への入力である場合、プログラムや端末の制御アイコンへの入力であればプログラム起動や端末制御を実施する。実際には、表示アイコンに対応するプログラムの起動コマンドをコントローラ端末のオペレーティングシステムに発行する。あるいは、コントローラ端末のオペレーティングシステムのＡＰＩを利用して、コマンド実行やシャットダウン、リブートなどの制御を行う。
【００９３】
なお、ここでは、透過ウィンドウ内のアイコンに対するキーボードやマウスの操作イベントを捕捉するようにしているが、ダブルクリックなどの特定の入力のみ捕捉するようにしてもよい。その場合、特定の操作イベント以外については、エージェント端末の画面への操作とコントローラ端末で判断し、操作イベントをエージェント端末に送信する。
【００９４】
図２０は、電池アイコンをマウスでポイントした際に表示されるポップアップウィンドウの表示例を示している。タスクトレイもしくはデスクトップ上に表示された電池アイコンをポイントした場合（２００２）、ポップアップウィンドウ２００１が表示される。ポップアップウィンドウ２００１が表示される際に、エージェント端末のバッファにある電源情報を取得し、詳細情報としてバッテリー残量、残り駆動時間の値を表示する。
【００９５】
このポップアップウィンドウは、エージェント端末で描画し、画面情報をコントローラ端末に送信することもできるし、クライアント端末が、エージェント端末から送信された電源情報をを元に、自ら描画してもよい。
【００９６】
図２１は、スピーカーアイコンをマウスでポイントした際に表示されるポップアップウィンドウの表示例を示している。タスクトレイもしくはデスクトップ上に表示されたスピーカーアイコンをポイントした場合（２１０２）、ポップアップウィンドウ２１０１が表示される。ポップアップウィンドウ２１０１が表示される際に、エージェント端末のバッファにあるスピーカー情報を取得し、詳細情報として音量、スピーカー状態を表示する。
【００９７】
図２２は、通信アイコンをマウスでポイントした際に表示されるポップアップウィンドウの表示例を示している。タスクトレイもしくはデスクトップ上に表示された通信アイコンをポイントした場合（２２０２）、ポップアップウィンドウ２２０１が表示される。ポップアップウィンドウ２２０１が表示される際に、エージェント端末のバッファにある通信情報を取得し、詳細情報としてネットワークタイプ、最大通信帯域、通信速度、電波強度の値を表示する。
【００９８】
図２３は、エージェント端末で電池アイコンを描画する際に参照する電池アイコンのテーブルを示している。エージェント端末では、図８に示す送信用バッファの形式で送信されたデータを解析し電源情報８０２が存在した場合には、電源情報８０２のうちバッテリー残量２３０１およびＡＣ電源接続状態２３０２の情報を元に、電池アイコンテーブルを参照し電池の状態を示す電池アイコン２３０３および電池アイコンの色２３０４を取得する。
【００９９】
図２４は、エージェント端末でスピーカーアイコンを描画する際に参照するスピーカーアイコンのテーブルを示している。エージェント端末では、図８に示す送信用バッファの形式で送信されたデータを解析しスピーカー情報８０３が存在した場合には、スピーカー情報８０３のうちスピーカー状態２４０１の情報を元に、スピーカーアイコンテーブルを参照しスピーカーの状態を示すスピーカーアイコン２４０２を取得する。
【０１００】
図２５は、エージェント端末で通信アイコンを描画する際に参照する通信アイコンのテーブルを示している。エージェント端末では、図８に示す送信用バッファの形式で送信されたデータを解析し通信情報８０４が存在した場合には、通信情報８０４のうちネットワークタイプ２５０１と電波強度２５０２の情報を元に、通信アイコンテーブルを参照し通信状態を示す通信アイコン２５０３を取得する。通信情報８０４については、電波強度の他に、通信速度に関するアイコンをもうけ、通信速度を表示することも可能である。
【０１０１】
なお、端末情報は、電源情報、電池情報、通信情報、スピーカー情報だけでなく、コントローラ端末の状態や設定情報に関するものであればよく、他に例えば、コントローラ端末のＣＰＵの情報（負荷やパフォーマンス等）、メモリの情報（メモリ容量、メモリ使用状況、メモリ使用率、キャッシュヒット率等）など、コントローラ端末のパフォーマンスに関する情報であってもよい。
【０１０２】
上述した実施形態は、本発明の趣旨を逸脱しない範囲で適宜変更や組み合わせ可能である。
【図面の簡単な説明】
【０１０３】
【図１】リモート操作システムの外観を示す図である。
【図２】コントローラ端末とエージェント端末間の制御シーケンスの例を示す図である。
【図３】コントローラ端末とエージェント端末のモジュール構成およびデータの流れの例を示す図である。
【図４】コントローラ端末とエージェント端末のモジュール構成および画面データの流れの例を示す図である。
【図５】電源情報の一時保存用バッファのデータ形式の例を示す図である。
【図６】スピーカー情報の一時保存用バッファのデータ形式の例を示す図である。
【図７】通信情報の一時保存用バッファのデータ形式の例を示す図である。
【図８】操作制御情報および端末情報の送信用バッファのデータ形式の例を示す図である。
【図９】端末制御情報の送信用バッファのデータ形式の例を示す図である。
【図１０】端末制御情報の定義テーブルのデータ形式の例を示す図である。
【図１１】コントローラ端末とエージェント端末間の、時刻合わせの方法および通信速度の算出方法の例を示す図である。
【図１２】電源情報を取得し一時保存用バッファに格納するまでの流れを示すフローチャートの例である。
【図１３】スピーカー情報を取得し一時保存用バッファに格納するまでの流れを示すフローチャートの例である。
【図１４】通信情報を取得し一時保存用バッファに格納するまでの流れを示すフローチャートの例である。
【図１５】操作イベントを解析する流れを示すフローチャートの例である。
【図１６】キーボード・マウス入力イベントを捕捉し送信用バッファを送信するまでの流れを示すフローチャートの例である。
【図１７】コントローラ端末より送信された情報の解析処理を示すフローチャートの例である。
【図１８】端末情報を表すアイコンを、エージェント端末のタスクトレイに表示した例を示す図である。
【図１９】端末情報を示すアイコンを、コントローラ端末のデスクトップ上に表示した例を示す図である。
【図２０】電池アイコンをポイントした際に表示されるポップアップウィンドウの例を示す図である。
【図２１】スピーカーアイコンをポイントした際に表示されるポップアップウィンドウの例を示す図である。
【図２２】通信アイコンをポイントした際に表示されるポップアップウィンドウの例を示す図である。
【図２３】電池アイコンのテーブルの例を示す図である。
【図２４】スピーカーアイコンのテーブル例を示す図である。
【図２５】通信アイコンのテーブルの例を示す図である。
【符号の説明】
【０１０４】
１０１  コントローラ端末（操作端末）
１０２  エージェント端末（被操作端末）
１０３、１０４  ネットワーク
１０５  入力データの流れ
１０６  表示データの流れ
１０７  無線ＬＡＮカードあるいは携帯通信カードなど
２０１〜２３２ コントローラ端末とエージェント端末の制御を示すシーケンス図
３０１  エージェント端末
３０２  アプリケーション
３０３  エージェント端末側のオペレーティングシステム
３０４  エージェント端末側の通信制御部
３０５  ディスプレイドライバフック制御部
３０６  エージェント端末側の基本制御部
３０７  エージェント端末側のディスプレイドライバ
３１１  コントローラ端末
３１２  通信モジュール
３１３  通信モジュールドライバ
３１４  サウンドドライバ
３１５  電源モジュールドライバ
３１６  電源モジュール
３１７  コントローラ端末の基本制御部
３１８  コントローラ端末のオペレーティングシステム
３１９  キーボードドライバ
３２０  表示制御部
３２１  コントローラ端末のディスプレイドライバ
３２２  マウスドライバ
３３１  通信情報の流れ
３３２  スピーカー情報の流れ
３３３  電源情報の流れ
３３４  キーボードの操作制御情報の流れ
３３５  マウスの操作制御情報の流れ
３３６  操作制御情報・端末情報の流れ
３３７  アイコンの描画命令の流れ
３３８  端末制御命令の流れ
３３９  透過ウィンドウへの入力に対する描画命令の流れ
３４０  透過ウィンドウへの入力に対する端末制御の流れ
４０１  エージェント端末における画面の描画命令の流れ
４０２  エージェント端末における捕捉した画面の描画命令の流れ
４０３  コントローラ端末における画面の描画命令の流れ
４０４  通信情報の流れ
４０５  スピーカー情報の流れ
４０６  電源情報の流れ
４０７  透過ウィンドウへ端末情報を表示する制御の流れ
５００〜５０３  電源情報一時保存用バッファの形式
６００〜６０２  スピーカー情報一時保存用バッファの形式
７００〜７０４  通信情報一時保存用バッファの形式
８０１〜８０５  操作制御情報および端末情報の送信用バッファの形式
９０１〜９０２  端末制御情報の送信用バッファの形式
１００１〜１００５  端末制御情報の定義テーブルのデータ形式
１１０１  エージェント端末上のダミーデータ送信時刻
１１０２  ダミーデータ送信時刻から１５０７を受信するまでの経過時間
１１０３  ２つ目のダミーデータの送信の流れ
１１０４  １つ目のダミーデータの送信の流れ
１１０５  １つ目のダミーデータの受信完了から２つの目のダミーデータの受信完了までの時間
１１０６  ２つ目のダミーデータの受信完了時刻
１１０７  １５０５、１５０６の送信の流れ
１１０８  コントローラ端末上の１５０７を受信した時刻
１１０９  時刻合わせの流れ
１１１０  エージェント端末上で送信を開始した時刻
１１１１  データ送信の流れ
１１１２  コントローラ端末でデータを受信完了した時刻
１１１３  通信速度算出式
１２０１〜１２０７  電源情報を取得からバッファへの保存までのフローチャート
１３０１〜１３０９  スピーカー情報を取得からバッファへの保存までのフローチャート
１４０１〜１４０７  通信情報を取得からバッファへの保存までのフローチャート
１５０１〜１５０７  操作イベント解析開始から実際の処理に移るまでのフローチャート
１６０１〜１６１３  操作イベントを捕捉からデータ送信までの流れ示すフローチャート
１７０１〜１７１９  受信した情報の解析処理の流れを示すフローチャート
１８０１  エージェント端末上のデスクトップ
１８０２  タスクトレイの拡大表示
１８０３  タスクトレイのアイコン表示の一例
１８０４  タスクトレイの拡大表示
１８０５  タスクトレイへのローカルアイコン表示の一例
１８０６  タスクトレイへのリモートアイコン表示の一例
１９０１  コントローラ端末上のデスクトップ
１９０２  端末情報のアイコン表示の一例
１９０３  制御アイコンの表示の一例
２００１  電源情報のポップアップウィンドウ表示の一例
２００２  電源アイコンへのポイント
２１０１  スピーカー情報のポップアップウィンドウ表示の一例
２１０１  スピーカーアイコンへのポイント
２２０１  通信情報のポップアップウィンドウ表示の一例
２２０２  通信アイコンへのポイント
２３０１〜２３０４  電池アイコンテーブル
２４０１〜２４０２  スピーカーアイコンテーブル
２５０１〜２５０３  通信アイコンテーブル
【図１】
2007065944.tif 000003
【図２】
2007065944.tif 000004
【図３】
2007065944.tif 000005
【図４】
2007065944.tif 000006
【図５】
2007065944.tif 000007
【図６】
2007065944.tif 000008
【図７】
2007065944.tif 000009
【図８】
2007065944.tif 000010
【図９】
2007065944.tif 000011
【図１０】
2007065944.tif 000012
【図１１】
2007065944.tif 000013
【図１２】
2007065944.tif 000014
【図１３】
2007065944.tif 000015
【図１４】
2007065944.tif 000016
【図１５】
2007065944.tif 000017
【図１６】
2007065944.tif 000018
【図１７】
2007065944.tif 000019
【図１８】
2007065944.tif 000020
【図１９】
2007065944.tif 000021
【図２０】
2007065944.tif 000022
【図２１】
2007065944.tif 000023
【図２２】
2007065944.tif 000024
【図２３】
2007065944.tif 000025
【図２４】
2007065944.tif 000026
【図２５】
2007065944.tif 000027