(57)【特許請求の範囲】
【請求項１】
ユーザ端末と通信可能なコンピュータ上で実行されるゲームソフトウェアと、
前記ゲームソフトウェアの実行により生成されるウィンドウの画像を取得する画像処理部と、
前記ウィンドウの画像を、前記ユーザ端末のＷｅｂブラウザの表示領域に表示させる画像配信部と、
前記ユーザ端末の前記Ｗｅｂブラウザ上での操作により生成されるイベント情報を、前記ユーザ端末と通信可能なコンピュータ上で実行される前記ゲームソフトウェアにより規定されている情報へ変換するイベント情報処理部と、
前記イベント情報処理部により変換された前記情報を、前記ゲームソフトウェアに入力する情報入力部と、
を有し、
前記イベント情報は、前記ユーザ端末の入力装置によるオン情報又はオフ情報を含み、
前記イベント情報処理部は、前記イベント情報を所定の間隔で前記ユーザ端末から受け取るよう構成されており、
前記情報入力部は、前記オン情報を受けた後に初めて前記オフ情報を受けた場合に、前記ゲームソフトウェアに、前記入力装置の操作が行われたことを示す情報を入力するよう構成されている、情報処理システム。
【請求項２】
前記イベント情報は、前記ユーザ端末の前記Ｗｅｂブラウザ上における位置座標に関する第１位置情報を含み、
前記イベント情報処理部は、前記Ｗｅｂブラウザの解像度と前記ゲームソフトウェアにより規定されている前記ウィンドウの解像度との比率に基づき、前記第１位置情報を、前記ウィンドウ上での第２位置情報に変換するよう構成されている、請求項１に記載の情報処理システム。
【請求項３】
前記ゲームソフトウェアによって規定されるウィンドウが複数存在する場合、前記画像処理部は、
複数の前記ウィンドウのうち最もサイズの大きいウィンドウを主ウィンドウと判断し、
前記主ウィンドウの領域を画像の取得領域に設定し、
前記主ウィンドウ以外の副ウィンドウが、前記主ウィンドウの内側に位置するように、前記副ウィンドウの位置座標を変更し、
前記取得領域内の画像を一画像として取得するよう構成されている、請求項１又は２に記載の情報処理システム。
【請求項４】
前記画像配信部は、前記ユーザ端末のタッチパネルの操作が可能な領域のうちの一部の領域に設けられた前記表示領域に画像を表示させるよう構成されており、
前記情報処理システムは、
前記表示領域に表示された画像上に、操作位置を表すポインタを表示させるポインタ表示部と、
前記ユーザ端末のタッチパネルにおける操作により生成される前記イベント情報に基づいて、前記ポインタを表示させる位置座標を変更するポインタ座標処理部と、を有する、請求項１から３のいずれか１項に記載の情報処理システム。
【請求項５】
前記ポインタを表示させない第１モードと、前記ポインタを表示させる第２モードと、に選択可能に切り替えられる、請求項４に記載の情報処理システム。
【請求項６】
前記表示領域の外側で前記タッチパネルのタップ操作があった場合、前記イベント情報処理部は、前記タッチパネルのタップ操作により生成された前記イベント情報を、キーボードの「Ｅｎｔｅｒ」ボタンにより生成されるべき入力信号に変換するよう構成されている、請求項４又は５に記載の情報処理システム。
【請求項７】
前記Ｗｅｂブラウザ上で動作するプログラミング言語に紐づいたボタン要素を前記表示領域の外側に表示させるボタン要素表示部と、
前記Ｗｅｂブラウザ上でのボタン要素表示部の操作により生成されたイベント情報を、キーボードに設けられている所定のボタンの押下により生成されるイベント信号に変換するボタン情報変換部と、を有し、
情報入力部は、前記ボタン情報変換部により変換された前記イベント信号を、前記ゲームソフトウェアに入力する、請求項１から６のいずれか１項に記載の情報処理システム。
【請求項８】
コンピュータが、
ユーザ端末と通信可能なコンピュータ上で実行されるゲームソフトウェアを実行するステップと、
前記ゲームソフトウェアの実行により生成されるウィンドウの画像を取得するステップと、
前記ウィンドウの画像を、前記ユーザ端末のＷｅｂブラウザの表示領域に表示させるステップと、
前記ユーザ端末の前記Ｗｅｂブラウザ上での操作により生成されるイベント情報を、前記ユーザ端末と通信可能なコンピュータ上で実行される前記ゲームソフトウェアにより規定されている情報へ変換するイベント情報処理ステップと、
前記イベント情報処理ステップにより変換された前記情報を、前記ゲームソフトウェアに入力する情報入力ステップと、
を実行することを含み、
前記イベント情報処理ステップでは、前記イベント情報を所定の間隔で前記ユーザ端末から受け取るよう構成されており、
前記イベント情報は、前記ユーザ端末の入力装置によるオン情報又はオフ情報を含み、
前記情報入力ステップでは、前記オン情報を受けた後に初めて前記オフ情報を受けた場合に、前記ゲームソフトウェアに、前記入力装置の操作が行われたことを示す情報を入力するよう構成されている、情報処理方法。
【請求項９】
請求項８に記載の情報処理方法をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、ネットワークを介して接続可能なコンピュータに搭載されたアプリケーションをユーザ端末から遠隔で操作可能な仕組みを含む情報処理システム及び情報処理方法に関する。
【背景技術】
【０００２】
コンピュータで実行されるソフトウェアは、スタンドアローン型アプリケーション、ネイティブアプリケーション、Ｗｅｂアプリケーションなどに分類される。
【０００３】
スタンドアローン型アプリケーションは、搭載されたコンピュータの演算装置のみで実行される。ネイティブアプリケーションは、インストールされたコンピュータ内の演算装置が直接に演算処理を行うタイプのアプリケーションである。スタンドアローン型アプリケーション及びネイティブアプリケーションは、必ずしもネットワーク環境を必要とすることなく実行される。ただし、ネイティブアプリケーションでは、アプリケーションの実行中の各段階で、必要に応じて通信が行われる場合もある（特許文献１）。
【０００４】
Ｗｅｂアプリケーションは、アプリケーションに関する演算処理をネットワーク上のサーバで行うタイプのアプリケーションである。Ｗｅｂアプリケーションでは、アプリケーションを使用するユーザが用いるユーザ端末は、もっぱらＷｅｂアプリケーションに関する入出力を行う。Ｗｅｂアプリケーションの操作には、ネットワークに接続できるネットワーク環境が必要とされる（特許文献２）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−０５３９６９号
【特許文献２】特表２０１５−５２５０８５号
【発明の概要】
【発明が解決しようとする課題】
【０００６】
スタンドアローン型アプリケーション又はネイティブアプリケーションは、基本的に、ユーザ端末でローカルに実行される。そのため、スタンドアローン型アプリケーション又はネイティブアプリケーションの実行性は、ユーザ端末のオペレーティングシステム（ＯＳ）の種類やバージョンに依存する。
【０００７】
そのため、アプリケーションの開発者は、通常、使用されるＯＳの種類やバージョンに合わせて、複数のバージョンのアプリケーションを製造する必要がある。特に、ユーザ端末のＯＳのバージョンが更新されると、この種のアプリケーションの実効性が保証されなくなることもある。
【０００８】
また、既存のスタンドアローン型アプリケーション又はネイティブアプリケーションをＷｅｂアプリケーションのタイプに変換することも考えられるが、そのような改変には、製造期間や製造コストがかかる。
【０００９】
上記背景に鑑み、既存のソフトウェアをＯＳの種類やバージョン等になるべく依存せずより汎用的に実行できるような仕組みが望まれる。
【課題を解決するための手段】
【００１０】
一態様における情報処理システムは、前記ユーザ端末のブラウザ上での操作により生成されるイベント情報を、前記ユーザ端末と通信可能なコンピュータ上で実行されるソフトウェアにより規定されている情報へ変換するイベント情報処理部と、前記イベント情報処理部により変換された前記情報を、前記ソフトウェアに入力する情報入力部と、を有する。
【００１１】
一態様における情報処理方法は、コンピュータが、ユーザ端末のブラウザ上での操作により生成されるイベント情報を、前記ユーザ端末と通信可能なコンピュータ上で実行されるソフトウェアにより規定されている情報へ変換するイベント情報処理ステップと、前記イベント情報処理ステップにより変換された前記情報を、前記ソフトウェアに入力する情報入力ステップと、を実行することを含む。
【００１２】
一態様におけるプログラムは、上記の情報処理方法をコンピュータに実行させるプログラムである。
【発明の効果】
【００１３】
上記態様によれば、既存のソフトウェアをＯＳの種類やバージョン等になるべく依存せずより汎用的に実行できるような仕組みが提供できる。
【図面の簡単な説明】
【００１４】
【図１】第１実施形態における情報処理システムの構成を示すブロック図である。
【図２】ユーザ端末のブラウザ上に表示されたソフトウェアウィンドウ画像の一例である。
【図３】イベント情報処理部の情報処理の一例を説明するための図である。
【図４】複数のソフトウェアウィンドウを含む本来のウィンドウ表示を示す模式図である。
【図５】図４の複数のソフトウェアウィンドウを含むソフトウェアウィンドウ画像を表示するユーザ端末を示す模式図である。
【図６】第２実施形態における情報処理システムの構成を示すブロック図である。
【図７】第１モードにおけるユーザ端末を示す模式図である。
【図８】第２モードにおけるユーザ端末を示す模式図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して、実施形態について説明する。以下の図面において、同一又は類似の部分には、同一又は類似の符号を付している。
【００１６】
（第１実施形態）
図１は、第１実施形態におけるコンピュータシステムの構成を示すブロック図である。図２は、ユーザ端末のブラウザ上に表示されたソフトウェアウィンドウ画像の一例である。
【００１７】
情報処理システム１００は、画像処理部１１０と、画像配信部１２０と、イベント情報処理部１３０と、情報入力部１４０と、インストールされたソフトウェア１５０と、を有していてよい。
【００１８】
図１では、情報処理システム１００が画像処理部１１０と画像配信部１２０とイベント情報処理部１３０と情報入力部１４０とソフトウェア１５０をすべて含むよう描かれているが、これらの構成要素は、それぞれ別のコンピュータに設けられていてもよい。すなわち、情報処理システム１００は、分散型のコンピュータシステムを構成していてもよい。
【００１９】
ユーザ端末９００は、ネットワークに接続可能なコンピュータであれば特に制限されない。ユーザ端末９００は、パーソナルコンピュータ、又はスマートフォンのような携帯端末などであってよい。
【００２０】
ユーザ端末９００は、ネットワークを介して情報処理システム１００に接続可能である。情報処理システム１００とユーザ端末９００とは、ネットワーク経由でデータを互いに送信／受信できる。ネットワークは、インターネット、エクストラネット、又はイントラネットのように様々ネットワーク（以下、単に「ネットワーク」と称する。）であってよい。
【００２１】
情報処理システム１００は、そこに搭載されているソフトウェア１５０を実行可能なコンピュータである。情報処理システム１００には、１つ又は複数のソフトウェアが搭載されていてよい。
【００２２】
情報処理システム１００に搭載されているソフトウェアは、スタンドアローン型アプリケーション、ネイティブアプリケーション、又はオンライン型のアプリケーションであってよい。好ましくは、ソフトウェアは、スタンドアローン型アプリケーション又はネイティブアプリケーションである。
【００２３】
特に、このソフトウェア１５０は、搭載されているコンピュータ上で本来操作されるものであってよい。言い換えると、ソフトウェアは、本来的にはソフトウェアを使用するユーザが直接操作するコンピュータにインストールされるタイプのものあってもよい。この場合、通常はソフトウェアが実行されると、このソフトウェアがインストールされているコンピュータに接続されているディスプレイ上にソフトウェアウィンドウ（ソフトウェアにより直接規定されているウィンドウ）が表示され、マウスやタッチパネル等の操作によりソフトウェアウィンドウ上でソフトウェアにより規定された操作が実行される。
【００２４】
ただし、本実施形態では、情報処理システム１００を構成するコンピュータにインストールされているソフトウェア１５０は、ネットワークを通じてユーザ端末９００から操作される。より具体的には、このソフトウェア１５０は、ネットワークを介してユーザ端末９００のブラウザから操作される。ユーザ端末９００のブラウザは、Ｗｅｂブラウザであってよい。
【００２５】
搭載されているソフトウェア１５０は、例えばゲームソフトウェアであってよい。この場合、ユーザは、ユーザ端末９００のＷｅｂブラウザから、ネットワークを通じてゲームを遠隔操作することができる。これにより、ユーザは、Ｗｅｂブラウザ上でゲームを楽しむことができる。
【００２６】
なお、情報処理システム１００に複数のソフトウェアが搭載されている場合、ユーザは、ユーザ端末９００のＷｅｂブラウザから、複数のソフトウェアのうちの１つを選択して実行することができることが好ましい。
【００２７】
画像配信部１２０は、ソフトウェア１５０の実行により生成される画像情報を、ユーザ端末９００に配信する。すなわち、画像配信部１２０は、情報処理システム１００上で実行されたソフトウェア１５０により通常表示されるべきウィンドウの画像を、ユーザ端末９００に配信する。これにより、ソフトウェアウィンドウに相当する画像（以下、「ソフトウェアウィンドウ画像」と称することがある。）が、ユーザ端末９００のＷｅｂブラウザ上に表示される。ここで、「画像」は、静止画だけでなく映像のような動画も含むものとする。
【００２８】
後述するように、ソフトウェアウィンドウ画像は、画像処理部１１０により取得（キャプチャ）した領域の画像によって規定される。好ましくは、ソフトウェアウィンドウ画像は、ソフトウェアウィンドウのクライアント領域に相当する画像である。ここで、ソフトウェアウィンドウ画像は、Ｗｅｂブラウザ内の、例えばビデオタグによって規定される表示領域に表示される。
【００２９】
一般的に、ソフトウェアの実行時に表示されるべきソフトウェアウィンドウは、ボタンやチェックボックスのように、ウィンドウ上で様々な操作を実現するためのアイテムを含む。しかしながら、本実施形態では、画像配信部１２０は、基本的に、ウィンドウ内に表示されるべき画像を、画像情報（動画情報）としてユーザ端末９００に配信する。
【００３０】
図２は、ユーザ端末９００のブラウザ８００上に表示されたソフトウェアウィンドウ画像の一例である。図２に示すように、ユーザ端末９００のＷｅｂブラウザ８００上に、画像が表示されている。この画像内に、所定のボタン８１０，８２０，８３０の画像が表示されている。
【００３１】
ここで、ユーザのＷｅｂブラウザ８００上に表示された画像は、画像情報（動画情報）として配信されたものである。すなわち、ユーザ端末９００のＷｅｂブラウザ上に表示されたソフトウェアウィンドウ画像内にボタン８１０，８２０，８３０に相当する画像があったとしても、それらのボタン８１０，８２０，８３０の画像は、ボタン本来の機能を有していない。
【００３２】
画像配信部１２０による画像の配信は、任意の公知の方法により実行できる。配信されるべき画像情報（動画情報）は、所定の方法によりエンコードされることが好ましい。エンコードされた画像情報は、ユーザ端末９００にてデコードされる。画像情報は、ユーザ端末９００のＷｅｂブラウザ８００の解像度と、ソフトウェアウィンドウの解像度との比率に基づき、Ｗｅｂブラウザ８００のサイズに応じてリサイズされてＷｅｂブラウザに表示されることが好ましい。これにより、ユーザ端末９００のＷｅｂブラウザ８００上での解像度の大きさの違いにかかわらず、ソフトウェアウィンドウ全体をＷｅｂブラウザ８００上に表示可能となる。
【００３３】
ユーザ端末９００側の入力装置の操作により生成されるイベント情報は、ネットワークを介してイベント情報処理部１３０に送信される。イベント情報処理部１３０は、ユーザ端末９００から受けたイベント情報を所定の規定により変換する。ここで、入力装置の操作は、ポインタ操作、タッチパネル操作、又はキーボード操作などがある。
【００３４】
イベント情報処理部１３０により変換された情報は、情報入力部１４０を通じてソフトウェア１５０に入力される。これにより、ユーザ端末９００から送られたイベント情報に基づき、ユーザ端末９００のＷｅｂブラウザに表示中のソフトウェアウィンドウ画像に対応するソフトウェア１５０が、遠隔にて操作される。
【００３５】
ここで、ポインタ操作は、例えば、マウス又はタッチパネルによるポインタの操作であってよいが、これに限定されない。ポインタ操作は、ポインタ位置の移動、又は所定の位置でのポインタのクリック操作もしくはタップ操作などを含む。
【００３６】
タッチパネル操作は、ユーザ端末９００がタッチパネル機能を有する場合に実行可能である。タッチパネル操作は、スワイプ操作やタップ操作等であってよい。
【００３７】
ここで、ポインタ操作又はタッチパネル操作により生成されるイベント情報は、ポインタの位置又はタッチ位置を特定するための位置情報（位置座標）を含む。この位置情報は、通常、ユーザ端末９００のスクリーン上での位置座標、又はユーザ端末９００のＷｅｂブラウザ８００上での位置座標により構成される。したがって、この位置座標は、通常２次元の数字により規定される。
【００３８】
本実施形態では、イベント情報処理部１３０は、ユーザ端末９００により使用されているＷｅｂブラウザ上でのポインタ位置又はタッチ位置の位置座標を取得する。ここで、ユーザ端末９００のＷｅｂブラウザ８００上で生成されたイベント情報は、そのままの形態で情報処理システム１００のソフトウェア１５０に入力できないことがある。
【００３９】
例えば、ユーザ端末９００のＷｅｂブラウザ８００上での位置座標は、ソフトウェアウィンドウ上での位置座標と同一ではない。これは、ユーザ端末９００のＷｅｂブラウザ８００の解像度が、ソフトウェア１５０により規定されるウィンドウの解像度と異なることに起因する。
【００４０】
（位置座標の変換）
以下、ユーザ端末９００からのイベント情報の処理の流れの具体的一例について説明する。
【００４１】
まず、イベント情報処理部１３０は、ユーザ端末９００からイベント情報を受ける。イベント情報は、例えばポインタ操作又はタッチ操作により生成される情報である。
【００４２】
イベント情報は、所定の時間間隔で定期的に受け取られてもよい。この場合、例えば、イベント情報処理部１３０は、０．０１秒〜１．００秒程度の間隔で、定期的にイベント情報を受け取ればよい。この代わりに、イベント情報処理部１３０は、イベントの発生時にイベント情報を受け取ってもよい。この場合、イベントの発生は、例えば、ポインタのクリック動作、又はタッチパネルのタッチ動作などであってよい。
【００４３】
ポインタ操作又はタッチ操作により生成されるイベント情報は、ポインタ位置又はタッチ位置の位置座標（ｄｕｘ、ｄｕｙ）を含む。ユーザ端末９００は、必要に応じて、位置座標（ｄｕｘ、ｄｕｙ）をＷｅｂブラウザ上での解像度（ＤＵｘ、ＤＵｙ）で割った規格化された位置座標に変換する。これにより、ポインタ位置又はタッチ位置の位置座標は、Ｗｅｂブラウザ８００の解像度の大きさに依存しない値に規格化される（ｄｕｘ／ＤＵｘ、ｄｕｙ／ＤＵｙ）。
【００４４】
まず、イベント情報処理部１３０は、ユーザ端末９００から、イベント情報として規格化された位置座標を受け取る。
【００４５】
次に、イベント情報処理部１３０は、規格化された位置座標を、ソフトウェアウィンドウの解像度（ＤＥｘ、ＤＥｙ）に基づき、ウィンドウ上での位置座標に変換する。
【００４６】
具体的には、イベント情報処理部１３０は、規格化された位置座標（ｄｕｘ／ＤＵｘ、ｄｕｙ／ＤＵｙ）に、ソフトウェアウィンドウの解像度（ＤＥｘ、ＤＥｙ）を乗じる。これにより、ソフトウェアウィンドウ上での位置座標（ｄｕｘ＊ＤＥｘ／ＤＵｘ、ｄｕｙ＊ＤＥｙ／ＤＵｙ）が得られる。
【００４７】
次に、情報入力部１４０は、イベント情報処理部１３０で変換された位置座標（ｄｕｘ＊ＤＥｘ／ＤＵｘ、ｄｕｙ＊ＤＥｙ／ＤＵｙ）を、ソフトウェア１５０に入力する。これにより、ソフトウェア１５０は、変換後の位置座標（ｄｕｘ＊ＤＥｘ／ＤＵｘ、ｄｕｙ＊ＤＥｙ／ＤＵｙ）でイベントが発生したものとして、その処理を進める。
【００４８】
前述したように、イベント情報処理部１３０は、Ｗｅｂブラウザ８００の解像度とソフトウェアウィンドウの解像度との比率に基づき、ユーザ端末９００のＷｅｂブラウザ８００上での位置座標を、ソフトウィンドウに関する位置座標に変換する。これにより、ユーザ端末９００のＷｅｂブラウザ８００とソフトウェアウィンドウとの間での解像度の違いに伴いポインタやタッチ等のイベント発生位置の座標にずれが生じたとしても、イベント情報処理部１３０は、その位置座標ずれを補正することができる。
【００４９】
より具体的には、イベント情報処理部１３０は、ユーザ端末９００に配信された画像情報のリサイズの比率に応じて、ユーザ端末９００のＷｅｂブラウザ８００上での位置座標を、ソフトウェアウィンドウに関する位置情報に変換する。これにより、ユーザ端末９００のＷｅｂブラウザ８００に表示されている画像中の特定の位置が、ソフトウェアウィンドウにおける対応する位置と一致することになる。
【００５０】
イベント情報処理部１３０の一例について、図３を参照しつつ説明する。図３では、ユーザ端末９００のＷｅｂブラウザ８００の解像度は、（１４４０、１０８０）である。一方、ソフトウェアウィンドウの解像度は、（８００、６００）である。
【００５１】
ここで、ユーザ端末９００において、Ｗｅｂブラウザ８００上の特定の位置座標、例えば（３６０、５００）でポインタ８５０がクリックされたとする。この場合、イベント情報処理部１３０は、ユーザ端末９００から、規格化された位置座標（３６０／１４４０、５００／１０８０）を受け取る。
【００５２】
イベント情報処理部１３０は、規格化された位置座標（３６０／１４４０、５００／１０８０）に、ソフトウェアウィンドウの解像度（８００、６００）を乗じる。これにより、イベント情報処理部１３０は、変換した位置座標（３６０＊８００／１４４０、５００＊６００／１０８０）を生成する。これにより、Ｗｅｂブラウザ８００上でのポインタの位置８５０は、ソフトウェアウィンドウ上での位置座標（２００、２７８）へマッピングされる（図中の符号２５０の位置）。なお、イベント情報処理部１３０による位置座標の変換がされない場合、図３に示すように、Ｗｅｂブラウザ上での位置座標は、ソフトウェアウィンドウ上で全く異なる位置座標（３６０、５００）を示すことになり得る（図中の符号３５０の位置）。
【００５３】
前述したように、情報入力部１４０は、イベント情報処理部１３０により変換された位置座標で、イベントが発生したという情報をソフトウェア１５０に入力する。したがって、ユーザがＷｅｂブラウザ８００に表示されているボタンの画像８１０，８２０，８３０の位置でポインタをクリック操作、又はタッチ操作することで、ソフトウェア１５０は、ソフトウェアウィンドウのボタンの位置でクリック又はタッチがされたと認識する。
【００５４】
これにより、ソフトウェアは、ボタンがクリック又はタッチされたときと同様の処理を開始する。このようにして、ユーザは、ユーザ端末９００のＷｅｂブラウザ８００から遠隔でソフトウェア１５０を操作することができる。
【００５５】
なお、前述した例では、ポインタのクリック操作やタッチパネルのタッチ操作により生成された位置情報について説明した。これに限らず、イベント情報処理部１３０は、ユーザ端末９００から取得したＷｅｂブラウザ８００上の位置座標に関する情報を、同様の手法により、ソフトウェアウィンドウ上での対応する位置座標に変換すればよい。そして、情報入力部１４０は、イベント情報処理部１３０で変換された位置座標でイベントが発生したという情報を、ソフトウェア１５０に入力すればよい。
【００５６】
そのような位置座標が生成されるイベント情報の例として、マウスのポインタ操作、クリック操作（例えば左クリックや右クリック）、ダブルクリック操作、長押し操作、タッチパネルのタッチ操作、スワイプ操作、長押し操作により生成されるイベント情報などが挙げられる。
【００５７】
前述した位置座標の変換の例では、まず、ユーザ端末９００が、規格化された位置座標（ｄｕｘ／ＤＵｘ、ｄｕｙ／ＤＵｙ）を生成する処理を実行している。この処理は、必須の処理ではなく、必要に応じて実行されればよい。例えば、ユーザ端末９００からイベント処理部１３０へＷｅｂブラウザの解像度（ＤＵｘ、ＤＵｙ）の情報とともに送れば、最終的に生成すべき変換後の位置座標（ｄｕｘ＊ＤＥｘ／ＤＵｘ、ｄｕｙ＊ＤＥｙ／ＤＵｙ）は、イベント情報処理部１３０によって生成可能である。
【００５８】
前述したＷｅｂブラウザ（ブラウザ）上での位置座標は、ブラウザの原点（０，０）を原点として規定された座標であってもよく、ブラウザ上の前述の表示領域の原点（０，０）を原点として規定された座標であってもよい。ただし、イベント情報処理部１３０が取得する位置座標の座標系の原点が、ソフトウェア１５０により規定されるソフトウェアウィンドウの原点とずれている場合には、前述した解像度に基づく比率処理の前又は後に、原点を一致させる処理を実行すればよい。
【００５９】
（イベント情報に含まれるオン情報とオフ情報の処理）
次に、イベント情報に含まれるオン情報とオフ情報の処理の一例について説明する。
【００６０】
まず、イベント情報処理部１３０は、ユーザ端末９００からイベント情報を受ける。本例において、イベント情報は、例えばポインタのクリック操作又はタッチパネルのタッチ操作により生成される情報である。これらの操作により生成されるイベント情報は、Ｗｅｂブラウザ上での位置座標を含む。したがって、この位置座標については、イベント情報処理部１３０により前述した方法と同様に変換されればよい。
【００６１】
以下では、イベント情報処理部１３０が所定の時間間隔で定期的にイベント情報を受け取る場合において、ポインタがクリックされたかどうか、又はタッチパネルがタッチされたかどうかについて判定する処理について説明する。
【００６２】
この場合、ユーザ端末９００は、ポインタがクリック又はタッチパネルがタッチされたことを示すオン情報と、クリック又はタッチされていないことを示すオフ情報と、を所定の間隔でイベント情報処理部１３０へ送信する。所定の間隔は、０．０１秒〜１．００秒程度の間隔であってよい。
【００６３】
次に、イベント情報処理部１３０は、オフ情報を受けた後に初めてオン情報を受けた場合に、押下されたという情報を生成する。イベント情報処理部１３０により生成されたこの情報は、情報入力部１４０により、ソフトウェア１５０に入力される。ソフトウェア１５０は、押下されたという情報を受け、入力された情報に伴い処理の進行を行う。
【００６４】
イベント情報処理部１３０は、オン情報を連続で受け取っている期間には、押下又は開放されたという情報を生成しない。言い換えると、イベント情報処理部１３０がオン情報を連続で受け取っている期間について、ソフトウェア１５０はクリック又はタッチされたという情報を受けず、クリック又はタッチによる処理の進行を行わない。
【００６５】
同様にして、イベント情報処理部１３０は、オン情報を受けた後に初めてオフ情報を受けた場合に、ソフトウェア１５０にクリック又はタッチが放されたという情報を生成する。このように、情報入力部１４０は、オン情報を受けた後にオフ情報を受けた場合、又はオフ情報を受けた後にオン情報を受けた場合に、ソフトウェア１５０に、入力装置の操作に変更があったことを示す情報を入力することが好ましい。
【００６６】
イベント情報処理部１３０が所定の時間間隔で定期的にイベント情報を受け取る場合、ユーザが、ポインタ又はタッチパネルを押下又は開放している期間、イベント情報処理部１３０はオン情報又はオフ情報を受け取り続けることになる。したがって、イベント情報処理部１３０がオン情報又はオフ情報を受け取る度に、ソフトウェア１５０に押下又は開放されたという情報を送ると、ソフトウェア１５０は複数回押下又は開放されたと誤認識し得る。上記態様では、オン情報を受けた後に一度だけクリック又はタッチされたと判定されるため、このような誤認識を抑制できる。
【００６７】
なお、上記の処理の代わりに、情報入力部１４０は、入力装置から受けたオン情報又はオフ情報をそのままソフトウェア１５０に入力してもかまわない。オン情報又はオフ情報の処理は、入力装置の種類等に応じて変更してもよい。
【００６８】
また、イベント情報処理部１３０がオン情報を受けた後に、所定の秒数、オン情報もオフ情報も受けない場合、イベント情報処理部１３０は、オフ情報を受けたと見なして処理を進行すればよい。これは、ユーザ端末９００の接続が途切れてしまった場合などに起こり得る。イベント情報処理部１３０は、このようにオフ情報を半永久的に受け取ることができなくなる状況において、オン情報の処理をし続けることなく、タイムアウトの処理を行うことが好ましい。
【００６９】
上記ではクリック動作又はタッチ動作について説明したが、同様にオン情報とオフ情報による操作を行うものであれば、クリック動作又はタッチ動作に限られない。前述したオン情報とオフ情報に関する処理は、ドラッグ＆ドロップのような操作にも適用できる。すなわち、前述した処理は、オン情報とオフ情報を含むイベント情報を生成させる入力装置を用いた操作全般に適用できる。そのような入力装置として、マウス、キーボード、タッチパネル等が挙げられるが、これに限定されない。
【００７０】
（ボタン要素機能）
情報処理装置１００は、Ｗｅｂブラウザ上で動作するプログラミング言語に紐づいたボタン要素を表示させるボタン要素表示部１９０と、ボタン要素表示部の操作により生成されたイベント情報を所定の情報に変換するボタン情報変換部１９２と、を有していてよい。
【００７１】
図２に示す例では、ソフトウェアウィンドウ画像の直下に、複数のボタン要素７１０，７２０，７３０が表示されている。これらのボタン要素７１０，７２０，７３０は、Ｗｅｂブラウザ上で動作するプログラミング言語、例えばＪａｖａＳｃｒｉｐｔ（登録商標）等に紐づいている。したがって、これらのボタン要素７１０，７２０，７３０がクリック操作又はタップ操作等により操作されると、ボタン要素７１０，７２０，７３０が操作されたという情報が、情報処理装置１００に送られる。
【００７２】
ここで、キーボードのような入力装置に設けられているボタンのうちのいずれかと対応づけられた画像（文字を含む）が、ボタン要素７１０，７２０，７３０上に表示されていることが好ましい。図２に示す例では、ボタン要素７１０に「Ｅｓｃ」の文字が表示されている。また、ボタン要素７２０に「Ｓｐａｃｅ」の文字が表示されている。さらに、ボタン要素７３０には「Ｅｎｔｅｒ」の文字が表示されている。
【００７３】
ボタン要素７１０，７２０，７３０が操作されると、ボタン情報変換部１９２は、ボタン要素表示部の操作により生成されたイベント情報、すなわちボタン要素７１０，７２０，７３０が操作されたという情報を受ける。
【００７４】
ボタン情報変換部１９２は、このイベント情報を、キーボードに設けられた所定のボタンの押下により生成されるイベント信号に変換する。この変換されたイベント信号が、ソフトウェア１５０に入力される。
【００７５】
ここで、ボタン要素７１０，７２０，７３０は、キーボードに設けられた所定のボタンに対応づけられており、ボタン情報変換部１９２は、ボタン要素７１０の操作により生成されるイベント情報を、対応するキーボードのボタンの押下により生成されるイベント信号に変換する。
【００７６】
これにより、ユーザがブラウザ上でボタン要素７１０，７２０，７３０を操作したときに、ソフトウェア１５０は、それに対応するキーボードイベントが発生したとみなし、その処理を進行する。
【００７７】
なお、前述の例では、ボタン要素７１０，７２０，７３０がキーボードのボタンに対応付けられているが、これに制限されない。ボタン要素７１０，７２０，７３０は、任意の入力装置における入力操作に対応付けられていればよい。
【００７８】
なお、ユーザ端末９００がキーボードなど物理的な任意の入力装置を持っている場合は、入力装置からの信号が情報処理システム１００に送られ、ボタン情報変換部１９２が情報処理システム１００に送られた信号に対して上記と同様の処理を行なってソフトウェア１５０を操作できるようにしてもよい。
【００７９】
（画像処理部）
次に、画像処理部１１０及びそれに関連する処理について説明する。図４は、複数のソフトウェアウィンドウを含む本来のウィンドウ表示を示す模式図である。図５は、図４の複数のソフトウェアウィンドウ画像を表示するユーザ端末側の表示画面を示す模式図である。
【００８０】
図４に示すように、ソフトウェア１５０は複数のソフトウェアウィンドウ５００，５２０を持つものであってよい。この場合、画像処理部１１０は、複数のソフトウェアウィンドウ５００，５２０の画像を一画像としてユーザ端末９００に表示させるため、所定の画像処理を実行する。
【００８１】
なお、一般的に、ソフトウェアウィンドウ５００は、ウィンドウ領域５０２と、クライアント領域５０４と、を有する。ウィンドウ領域５０２は、ウィンドウの枠に相当する部分であり、クライアント領域５０４は、ウィンドウ領域５０２の内側の領域に相当する。
【００８２】
以下、複数のソフトウェアウィンドウ画像を配信する手順を、画像処理部１１０による処理とともに説明する。
【００８３】
まず、画像処理部１１０は、ソフトウェアが持つウィンドウ（ソフトウェアウィンドウ）をすべて取得する。画像処理部１１０が複数のソフトウェアウィンドウを取得した場合、画像処理部１１０は、複数のソフトウェアウィンドウのうち最もサイズの大きいソフトウェアウィンドウを主ウィンドウと判断する。
【００８４】
次に、画像処理部１１０は、必要に応じて、主ウィンドウが画面の中央に位置するよう主ウィンドウの位置座標の基点を変換する。これにより、主ウィンドウが画面から外れないようにすることができる。本段落において、「画面」は、ソフトウェア１５０により認識されている仮想的な画面であってもよく、その大きさはソフトウェアの実行時に入力されることにより決定されるものでもよい。ここで、画像処理部１１０は、主ウィンドウが画面の中央に位置するよう主ウィンドウの位置座標の基点を変換したが、これに限られず、主ウィンドウが画面から外れないよう主ウィンドウの位置座標の基点を変換すればよい。
【００８５】
次に、画像処理部１１０は、主ウィンドウのクライアント領域を画像の取得領域に設定する（キャプチャ範囲）。
【００８６】
次に、画像処理部１１０は、主ウィンドウ以外の副ウィンドウが、主ウィンドウのクライアント領域の内側に位置するように、副ウィンドウの位置座標を変更する。
【００８７】
具体的一例では、画像処理部１１０は、主ウィンドウのクライアント領域の中央に副ウィンドウの中央を合わせるように、副ウィンドウの位置座標を変更する。この位置座標の変更にもかかわらず、副ウィンドウが、主ウィンドウのクライアント領域よりも外側にはみ出す場合、画像処理部１１０は、副ウィンドウがはみ出した分だけ、画像の取得領域（キャプチャ範囲）を広げればよい。
【００８８】
画像処理部１１０は、上記のキャプチャ範囲の画像情報を一画像として取得する。これにより、画像処理部１１０は、主ウィンドウと副ウィンドウが互いに重なった画像情報を、ユーザ端末９００に配信すべき画像として取得する。
【００８９】
画像配信部１２０は、画像処理部１１０により処理された画像をユーザ端末９００に配信すればよい。これにより、ユーザ端末９００には、図５に示すような画像６００が表示される。
【００９０】
画像処理部１１０による前述した処理は、所定の時間間隔で繰り返し行われればよい。そのような所定の時間間隔は、例えば０．０１秒〜１．００秒の範囲であってよい。
【００９１】
なお、前述した画像処理部１１０による処理では、原則、主ウィンドウの非クライアント領域は、原則、ユーザ端末９００に配信されない。この代わりに、主ウィンドウの非クライアント領域も、ユーザ端末９００に配信してもよい。ただし、ユーザ端末９００側のブラウザの枠と、主ウィンドウのウィンドウ領域の枠の画像と、の両方が表示されることを防ぐためには、画像処理部１１０は、主ウィンドウのクライアント領域のみを画像の取得範囲とすることが好ましい。
【００９２】
なお、ソフトウェア１５０が１つのウィンドウしかもたない場合、画像処理部１１０は、前述した副ウィンドウに関する処理を除き、同様の処理を実行すればよい。すなわち、画像処理部１１０は、ソフトウェア１５０がもつ１つのウィンドウを主ウィンドウと規定し、好ましくは主ウィンドウのクライアント領域をキャプチャ範囲として設定すればよい。
【００９３】
前述した情報処理システム１００によれば、ユーザは、ユーザ端末９００のＷｅｂブラウザから、遠隔にてソフトウェア１５０を操作できる。また、画像（動画）情報として配信されている表示画面上でのポインタ操作やタッチ操作に伴うイベント情報によって、ソフトウェアを操作することが可能である。したがって、ユーザ端末９００に搭載されているＯＳの種類やバージョン等に依存せずソフトウェアを操作することができる。
【００９４】
また、上記の実施形態で説明した情報処理システム１００のようなプラットフォームを作成しておけば、既存のソフトウェアを改変することなく情報処理システム１００に既存のソフトウェアを入れるだけで、ユーザは当該ソフトウェアを実行できる。そのため、ソフトウェアの製造者は、既存のソフトウェアを、ＯＳの種類やバージョン等に応じて改変する必要がない。
【００９５】
（第２実施形態）
図６は、第２実施形態における情報処理システムの構成を示すブロック図である。図７は、第１モードにおけるユーザ端末を示す模式図である。図８は、第２モードにおけるユーザ端末を示す模式図である。
【００９６】
第２実施形態において、第１実施形態と同様の構成については、同じ符号が付されている。また、第１実施形態と同様の構成については、その説明を省略することがあることに留意されたい。
【００９７】
第２実施形態では、ユーザ端末９００（コンピュータ）は、タッチパネルを有する表示画面を含む。図７及び図８では、ユーザ端末９００は、スマートフォンであるが、これに限定されない。図７及び図８では、このタッチパネルを有する表示画面に、前述したソフトウェアウィンドウ画像が表示されていることに留意されたい。
【００９８】
第２実施形態では、ユーザ端末９００は、ポインタを表示させない第１モードと（図７）、ポインタを表示させる第２モードと（図８）、に選択可能に切り替えられる。この切り替えは、不図視の選択ボタン等によるユーザ設定により切り替え可能に構成されていてよい。
【００９９】
このような切り替えは、ユーザ端末９００にインストールされたアプリケーションにより実現されてもよく、ネットワーク上の情報処理システム１００に搭載された機能により実現されてもよい。
【０１００】
図７に示す第１モードは、通常のモードであり、ソフトウェアウィンドウ画像が表示画面に表示されている。ユーザは、前述したように、画像が表示されている領域、すなわちタッチパネルの領域を、タップ操作又はスワイプ操作等することにより、情報処理システム１００で実行されているソフトウェア１５０を遠隔で操作することができる。
【０１０１】
ここで、ソフトウェアウィンドウ画像が表示されている領域の外側の領域において、ユーザがタップ操作又はスワイプ操作等をした場合であっても、イベント情報処理部１３０は、ソフトウェアの操作に関する入力信号に変換し、それから情報入力部１４０がソフトウェア１５０に当該入力信号を入力すればよい。
【０１０２】
具体的には、イベント情報処理部１３０は、まず、ユーザ端末９００のタッチパネルのタップ操作又はスワイプ操作により生成されたイベント情報を受け取る。イベント情報処理部１３０は、このイベント情報に含まれるＷｅｂブラウザにおける位置座標を、第１実施形態で説明したように、Ｗｅｂブラウザとソフトウェアウィンドウの解像度の比率に応じて変換する。
【０１０３】
イベント情報処理部１３０は、変換された位置座標がソフトウェアウィンドウの領域から外れている場合、当該イベント情報を、所定の入力信号に変換する。
【０１０４】
ここで、所定の入力信号は、ソフトウェアウィンドウの位置座標とは関係のない信号であることが好ましい。そのような入力信号として、例えばキーボード信号が挙げられる。所定の入力信号は、特に、キーボード信号のうち使用頻度の高い「Ｅｎｔｅｒ」ボタンにより生成されるべき入力信号であることが好ましい。
【０１０５】
上記説明では、ソフトウェアウィンドウ画像が表示されている領域の外側の領域において、ユーザがタップ操作又はスワイプ操作等をした場合、イベント情報処理部１３０が位置座標の変換の処理を行っている。この代わりに、ソフトウェアウィンドウ画像が表示されている領域の外側の領域において、ユーザがタップ操作又はスワイプ操作等をした場合、ユーザ端末９００が、当該操作に伴い生成されたイベント情報を、前述した所定の信号に変換して情報処理システム１００に送信してもよい。この場合、このような処理を行うプログラムは、ネットワークを通じてダウンロードされ、又はＣＤ−ＲＯＭのような記憶媒体から、インストールされることによって、ユーザ端末９００に設けられればよい。
【０１０６】
これにより、ユーザが、ユーザ端末９００のソフトウェアウィンドウ画像が表示されていない領域を操作、例えばタップ操作すると、「Ｅｎｔｅｒ」のようなキーボード操作を行ったものとしてソフトウェアの処理がすすむことなる。したがって、ソフトウェアの実行上の操作性を向上させることができる。
【０１０７】
図８に示す第２モードは、ソフトウェアウィンドウ画像上に、操作位置を表すポインタ８９０を表示させるモードである。この目的のため、情報処理装置１００は、ポインタの位置座標を管理するポインタ座標処理部１７０と、ポインタの画像８９０を表示させるポインタ表示部１８０と、を備えていてよい。
【０１０８】
図８に示すように、ポインタ座標処理部１７０及びポインタ表示部１８０は、ユーザ端末９００に設けられていてよい。この場合、ポインタ座標処理部１７０及びポインタ表示部１８０は、ネットワークを通じてダウンロードされ、又はＣＤ−ＲＯＭのような記憶媒体から、インストールされることによって、ユーザ端末９００に設けられればよい。
【０１０９】
ソフトウェアウィンドウ画像は、ユーザ端末９００のスクリーンの一部にのみ表示されている。一方、タッチパネルにおけるタッチ操作が可能な領域（図８で塗りつぶしパターンを施した領域Ｒ１）は、ソフトウェアウィンドウ画像の表示領域とは異なっている。
【０１１０】
好ましくは、タッチ操作が可能な領域Ｒ１の少なくとも一部は、ソフトウェアウィンドウ画像の表示領域の外側に存在することが好ましい。図８に示す例では、タッチ操作が可能な領域Ｒ１は、ソフトウェアウィンドウ画像の表示領域と、ソフトウェアウィンドウ画像の表示領域よりも下側に延出した領域にわたって延びている。
【０１１１】
ここで、ポインタ座標処理部１７０は、ポインタの画像８９０の現在の位置座標と、タッチパネルにおけるタッチ操作により生成されたイベント情報（位置座標）と、に基づき、ポインタの画像８９０を表示させるべき位置座標を変換してよい。
【０１１２】
ポインタ座標処理部１７０は、ユーザ端末９００のタッチパネル上でのスワイプ操作に基づいて、ポインタの画像８９０の位置を移動させることが好ましい。より具体的には、ポインタ座標処理部１７０は、スワイプ操作に基づいて生成されたタッチ位置の位置座標の変化分に応じて、ポインタの位置を現在の位置座標から変更すればよい。ここで、ポインタの移動方向は、スワイプ操作の移動方向と同方向であることが好ましい。
【０１１３】
以下では、ポインタの画像８９０を移動させる処理についてより詳細に説明する。
【０１１４】
まず、ポインタ座標処理部１７０が所定の時間間隔で定期的にイベント情報を受け取る。所定の時間間隔は、０．０１秒〜１．００秒程度の間隔であってよい。イベント情報は、タッチパネルがタッチされているかを表すオン情報又はオフ情報と、オン情報におけるタッチ位置を表す位置座標の情報と、を含む。
【０１１５】
ポインタ座標処理部１７０は、オン情報を連続で受けた場合、タッチ位置を表す位置座標の差分を算出することが好ましい。この差分が、所定のピクセル以上である場合、ポインタ座標処理部１７０は、スワイプ操作であると判定する。一方、この差分が、所定のピクセル未満である場合、ポインタ座標処理部１７０は、同じ位置でタッチが継続されていると判定する。ここで所定のピクセルは、例えば０〜３０ピクセルであってよい。
【０１１６】
ポインタ座標処理部１７０がスワイプ操作であると判定すると、連続して受けたオン情報における位置座標の変化、すなわち位置座標どうしの方向及び距離に応じた差分ベクトルを生成する。なお、差分ベクトルは、２次元の数値により規定できる。すなわち、連続して受けたオン情報における位置座標の変化が、Ｘ方向に３００ピクセル、Ｙ方向に１５０ピクセルであれば、差分ベクトルは、（３００，１５０）によって規定される。
【０１１７】
ポインタ座標処理部１７０は、この差分ベクトルに基づき、記憶部に記憶されているポインタの画像８９０の現在の位置座標を変更する。より具体的には、ポインタ座標処理部１７０は、ポインタの画像８９０の現在の位置座標に、差分ベクトルを付加すればよい。
【０１１８】
ポインタ表示部１８０は、このように変更された位置座標に基づき、ユーザ端末９００のブラウザ上にポインタの画像８９０を表示させる。なお、ポインタの画像８９０の位置座標は、ソフトウェアウィンドウ画像が表示される表示領域内の座標に制限されることが好ましい。すなわち、ポインタの画像８９０は、ソフトウェアウィンドウ画像が表示される表示領域内でのみ移動可能であることが好ましい。
【０１１９】
前述したように、タッチ操作が可能な領域Ｒ１がソフトウェアウィンドウ画像の表示領域と異なっている場合、ユーザは、画像の表示領域とは異なる領域に触れながらポインタを操作することができる。すなわち、ユーザは、表示された画像を指で隠すことなく、ポインタ操作が可能となる。このように、一般的にポインタの画像を表示する必要がないタッチパネルを有するユーザ端末９００であるにもかかわらず、ポインタ８５０を表示することで、画像を指で隠すことなく、ポインタ操作によりソフトウェアの操作が可能となる。
【０１２０】
このような観点から、タッチ操作が可能な領域Ｒ１は、ソフトウェアウィンドウ画像の表示領域より外側にも存在することがより好ましい。なお、タッチ操作が可能な領域Ｒ１は、ソフトウェアウィンドウ画像が表示される表示領域と重複していてもよい。
【０１２１】
ポインタの画像８９０の位置の移動距離は、スワイプ操作による移動距離と同じであってもよく、長くてもよく、又は短くてもよい。移動距離の大きさによって変化量が加速度的に変わってもよい。両方の移動距離が同じである場合、ユーザは、ポインタを移動させたい距離だけ指を移動させればよいので、どのくらい操作すればよいか感覚的にわかり易い。
【０１２２】
ポインタの画像８９０の位置の移動距離が、スワイプ操作による移動距離よりも長い場合、ユーザは、より短い距離だけ指を移動させればよいので、ポインタの操作スピードを加速することができる。
【０１２３】
ポインタの画像８９０の移動距離が、スワイプ操作による移動距離よりも短い場合、ユーザは、指を長い距離動かしてもポインタの移動は短いため、ポインタの位置の微調整が容易になる。これは、特に、スマートフォンのように画面が小さいコンピュータにとって有効である。
【０１２４】
スワイプ操作による移動距離に対するポインタの位置の移動距離または移動の加速度は、ユーザによる設定により切り替え可能であることが好ましい。このような切り替えは、前述した差分ベクトルに、ユーザにより設定された所定の値を乗じる処理によって実現できる。
【０１２５】
第２実施形態における第２モードでは（図８参照）、イベント情報処理部１３０は、ユーザにより行われたタッチ操作により生成されたイベント情報を、以下のように処理する。第２モードでは、イベント情報処理部１３０は、タッチ操作が行われた際に、ポインタ８９０の位置座標を受け取る。
【０１２６】
イベント情報処理部１３０は、このポインタ８９０の位置座標を、第１実施形態と同様に、ユーザ端末９００のブラウザの解像度とソフトウェアウィンドウの解像度との比率に基づき変換する。情報入力部１４０は、このようして変換された位置座標を、ソフトウェア１５０に入力すればよい。
【０１２７】
前述した例では、ポインタ座標処理部１７０及びポインタ表示部１８０は、ユーザ端末９００に設けられている。この代わりに、ポインタ座標処理部１７０とポインタ表示部１８０の一方、又は両方は、情報処理装置１００、すなわちネットワーク上に設けられていてもよい。この場合、ポインタの画像８９０を表示させるべき位置座標は、ネットワーク上で管理されていてよい。この場合、ユーザによるスワイプ操作により発生するイベント情報を、ネットワークを介して通信することを除き、前述と概ね同様の方法によってポインタの画像８９０を表示させるべき位置座標を変更できる。ポインタ表示部１８０は、このネットワーク上で管理されていている位置座標に基づき、ポインタの画像８９０を表示させればよい。
【０１２８】
なお、ネットワーク上でポインタの画像８９０を表示させるべき位置座標を管理する場合、この位置座標は、ユーザ端末９００のブラウザの解像度に基づき定義された位置座標によって管理されてもよく、ソフトウェアウィンドウの解像度に基づき定義された位置座標によって管理されていてもよい。ポインタの画像８９０を表示させるべき位置座標がソフトウェアウィンドウの解像度に基づき定義された位置座標によって管理される場合、ポインタ座標処理部１７０は、ユーザ端末９００から受け取った位置座標を、第１実施形態のイベント情報処理部１３０と同様に、ユーザ端末９００のブラウザの解像度とソフトウェアウィンドウの解像度の比に基づき変換すればよい。またこの場合、ユーザ端末９００にポインタの画像を表示させる際には、ソフトウェアウィンドウの解像度に基づき定義された位置座標を、ブラウザの解像度とソフトウェアウィンドウの解像度の比（変換時とは逆の比率）により逆変換した位置座標を生成し、逆変換した位置座標に基づきポインタの画像８９０をユーザ端末９００に表示すればよい。
【０１２９】
なお、ポインタの画像８９０は、情報処理システム１００から、ソフトウェアウィンドウ画像に含めるよう配信されてもよい。
【０１３０】
第１実施形態及び第２実施形態で説明した情報処理をコンピュータが行う方法も本発明の範囲に含まれることに留意されたい。さらに、そのような方法をコンピュータに実行させるプログラムも本発明の範囲に含まれる。
【０１３１】
このようなコンピュータプログラムは、様々なタイプの非一時的なコンピュータ可読媒体（ｎｏｎ−ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）に格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体（ｔａｎｇｉｂｌｅ  ｓｔｏｒａｇｅ  ｍｅｄｉｕｍ）を含む。
【０１３２】
非一時的なコンピュータ可読媒体の例は、磁気記録媒体（例えばフレキシブルディスク、磁気テープ、ハードディスクドライブ）、光磁気記録媒体（例えば光磁気ディスク）、ＣＤ−ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ−Ｒ、ＣＤ−Ｒ／Ｗ、半導体メモリ（例えば、マスクＲＯＭ、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）、ＥＰＲＯＭ（Ｅｒａｓａｂｌｅ  ＰＲＯＭ）、フラッシュＲＯＭ、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ））を含む。
【０１３３】
また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体（ｔｒａｎｓｉｔｏｒｙ  ｃｏｍｐｕｔｅｒ  ｒｅａｄａｂｌｅ  ｍｅｄｉｕｍ）によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、プログラムをコンピュータに供給できる。
【０１３４】
上述したように、実施形態を通じて本発明の内容を開示したが、この開示の一部をなす論述及び図面は、本発明を限定するものであると理解すべきではない。この開示から当業者には様々な代替の実施形態、実施例及び運用技術が明らかとなる。したがって、本発明の技術的範囲は、上述の説明から妥当な特許請求の範囲に係る発明特定事項によってのみ定められるものであることに留意されたい。
【０１３５】
例えば、前述した実施形態では、ソフトウェア１５０は、搭載されているコンピュータ上で本来操作される既存のソフトウェアであった。この代わりに、ソフトウェア１５０は、本実施形態で説明したプラットフォーム上で実行するために製造されたものであってもよい。
【０１３６】
この代わりに、ソフトウェア１５０は、特定のオペレーティングシステム（ＯＳ）、例えば特定の種類又はバージョンのＯＳにより実行可能に構成されているものであってもよい。この場合、情報処理システム１００が、ソフトウェア１５０に対応するＯＳによりソフトウェアを実行するよう構成されていればよい。この場合、ユーザ端末９００のＯＳが、ソフトウェア１５０により推奨される特定の種類又はバージョンのＯＳでなくても、ユーザは、Ｗｅｂブラウザを通じて遠隔にてソフトウェア１５０を実行できる。この場合、情報処理システム１００は、ソフトウェア１５０により推奨されるＯＳを起動したうえで、当該ＯＳ上でソフトウェア１５０を実行してもよい。
【０１３７】
上記の実施形態では、ユーザ端末９００のＷｅｂブラウザを通じて遠隔にてソフトウェア１５０を実行する技術が説明されている。上記の技術は、Ｗｅｂブラウザの利用に限られず、ネットワークを通じて配信される画像（動画）を表示可能なブラウザであれば、どのようなものでも利用できる。
【符号の説明】
【０１３８】
１００  情報処理システム
１１０  画像処理部
１２０  画像配信部
１３０  イベント情報処理部
１４０  情報入力部
１７０  ポインタ座標処理部
１８０  ポインタ表示部
９００  ユーザ端末
【要約】
【課題】既存のソフトウェアをＯＳの種類やバージョン等になるべく依存せずより汎用的に実行できるような仕組みを提供する。
【解決手段】情報処理システム１００は、ユーザ端末９００のブラウザ上での操作により生成されるイベント情報を、ユーザ端末と通信可能なコンピュータ上で実行されるソフトウェア１５０により規定されている情報へ変換するイベント情報処理部１３０と、イベント情報処理部１３０により変換された情報を、ソフトウェアに入力する情報入力部１４０と、を有する。
【選択図】図１【図１】
0006624767.tif 000002
【図２】
0006624767.tif 000003
【図３】
0006624767.tif 000004
【図４】
0006624767.tif 000005
【図５】
0006624767.tif 000006
【図６】
0006624767.tif 000007
【図７】
0006624767.tif 000008
【図８】
0006624767.tif 000009