JP2006338531A - 画面共有サーバ装置、画面共有方法、画面共有サーバプログラム及び記録媒体 - Google Patents

画面共有サーバ装置、画面共有方法、画面共有サーバプログラム及び記録媒体 Download PDF

Info

Publication number
JP2006338531A
JP2006338531A JP2005164416A JP2005164416A JP2006338531A JP 2006338531 A JP2006338531 A JP 2006338531A JP 2005164416 A JP2005164416 A JP 2005164416A JP 2005164416 A JP2005164416 A JP 2005164416A JP 2006338531 A JP2006338531 A JP 2006338531A
Authority
JP
Japan
Prior art keywords
screen
shared
window
screen sharing
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2005164416A
Other languages
English (en)
Other versions
JP4751647B2 (ja
Inventor
Taiga Asano
大雅 淺野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2005164416A priority Critical patent/JP4751647B2/ja
Publication of JP2006338531A publication Critical patent/JP2006338531A/ja
Application granted granted Critical
Publication of JP4751647B2 publication Critical patent/JP4751647B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

【課題】 画面情報の共有を適切に制限することのできる画面共有サーバ装置、画面共有方法、画面共有サーバプログラム及び記録媒体の提供を目的とする。
【解決手段】 表示装置に表示させる画面情報が記録された第一のメモリ領域より該画面情報を取得し、取得された画面情報をネットワークを介して接続する他のコンピュータに送信することにより前記他のコンピュータに前記画面情報を共有表示させる画面共有サーバ手段と、前記他のコンピュータに共有表示させない非共有画面の画面情報について前記第一のメモリ領域への記録は行わないで前記表示装置に表示させる非共有表示制御手段とを有することによる上記課題を解決する。
【選択図】 図8

Description

本発明は、画面共有サーバ装置、画面共有方法、画面共有サーバプログラム及び記録媒体に関し、特にネットワークを介して接続する他のコンピュータと画面共有を行う画面共有サーバ装置、画面共有方法、画面共有サーバプログラム及び記録媒体に関する。
ネットワークを介して接続しているコンピュータ間において画面情報を共有する技術としてVNC(Virtual Network Computing)が知られている。VNCによれば、画面共有サーバのディスプレイに表示されている画面情報を画面共有クライアントのディスプレイに表示させることができる。したがって、画面共有クライアントのユーザは、画面共有サーバのディスプレイに表示されている画面情報と同様の画面情報を見ながら、画面共有サーバを遠隔操作することができる(例えば、特許文献1)。
VNCを実現するためのソフトウェアは、例えば、UltraVNC(http://ultravnc.sourceforge.net/)(以下「従来例1」という。)、Microsoft(登録商標)社のNetMeeting(以下「従来例2」という。)、及びMetaVNC(http://sourceforge.net/projects/metavnc/、http://metavnc.sourceforge.net/index-j.html)(以下「従来例3」という。)等、各種提供されている。
特開平11−65975号公報
しかしながら、画面共有サーバの画面情報の一部については、画面共有クライアントには参照させたくない場合がある。例えば、電子メールを表示させるメーラのように、個人的な情報を表示対象とするアプリケーションウィンドウ等である。
かかる事情を考慮して、従来例1や従来例2には、画面共有の対象とさせたいウィンドウだけを選択する機能があるが、共有対象とするウィンドウの切り替え操作が煩雑であるという問題がある。
また、従来例3は、デスクトップの背景領域をクライアント側に共有表示しない機能を実現している。このソフトウェアは、Windows(登録商標)のリージョン関数を用いて画面共有クライアントのウィンドウの形を刳り貫いていくことによって、非共有化を実現している。しかし、この方式では、ウィンドウの移動時に処理効率が悪いという問題がある。
また、共有ウィンドウと共有したくないウィンドウ(非共有ウィンドウ)が重なっている場合に共有表示が適切に行われないことがあるという問題がある。
図1は、共有ウィンドウと非共有ウィンドウとが重なっている様子を示す図である。図1において、デスクトップ画面d501、デスクトップ画面d502は、それぞれ画面共有サーバ側、画面共有クライアント側のデスクトップ画面を示す。ウィンドウw501は共有表示されており、デスクトップ画面d501及びデスクトップ画面d502に表示されている。一方、ウィンドウw502は非共有とされており、デスクトップ画面d501には表示されているが、デスクトップ画面d502には表示されていない。このような状況において、ウィンドウw501とウィンドウw502との重複領域a1がデスクトップ画面d502において適切に表示されない場合がある。
また、特許文献1は、非共有領域を塗りつぶす第一の方法と、デスクトップ画面の画面情報をキャッシュしておいて、非共有とされたウィンドウが新たに表示された場合は新しいウィンドウの画面情報をクライアントに送信せずに、キャッシュされた古い画面情報のままにする第二の方法とを採用している。
しかし、第一の方法は、ウィンドウを隠していることが分かってしまう欠点があり、これは当文献中でも指摘されている。
また、第二の方法は、第一の方法の問題点を改善するために考えられた方式であるが、現実的には共有又は非共有ウィンドウを移動させた場合や、大きさを変更した場合に、画面共有クライアントに送信するための画面情報の計算処理に時間がかかると共に、必ずしも意図通りの画面情報を生成できない場合がある。その場合、画面共有クライアントは、崩れた画面情報を受け取る可能性がある。
本発明は、上記の点に鑑みてなされたものであって、画面情報の共有を適切に制限することのできる画面共有サーバ装置、画面共有方法、画面共有サーバプログラム及び記録媒体の提供を目的とする。
そこで上記課題を解決するため、本発明は、表示装置に表示させる画面情報が記録された第一のメモリ領域より該画面情報を取得し、取得された画面情報をネットワークを介して接続する他のコンピュータに送信することにより前記他のコンピュータに前記画面情報を共有表示させる画面共有サーバ手段と、前記他のコンピュータに共有表示させない非共有画面の画面情報について前記第一のメモリ領域への記録は行わないで前記表示装置に表示させる非共有表示制御手段とを有することを特徴とする画面共有サーバ装置として構成される。
また、上記課題を解決するため、本発明は、上記画面共有サーバ装置における画面共有方法、前記画面共有方法をコンピュータに実行させるための画面共有プログラム、又は前記画面共有プログラムを記録した記録媒体としてもよい。
本発明によれば、画面情報の共有を適切に制限することのできる画面共有サーバ装置、画面共有方法、画面共有サーバプログラム及び記録媒体を提供することができる。
以下、図面に基づいて本発明の実施の形態を説明する。本実施の形態では、VNC(Virtual Network Computing)と呼ばれる技術を利用する。VNCとは、ネットワークを介して接続している他のコンピュータの画面を遠隔操作するための技術である。
図2は、VNCの動作原理を説明するための図である。図2において、サーバPC510とクライアントPC520とがLAN(Local Area Network)等のネットワークを介して接続されている。サーバPC510には画面共有サーバ512が、クライアントPC520には画面共有クライアント522が、それぞれ実装されている。
画面共有サーバ512は、サーバPC510の表示装置に表示されている画面データをクライアントPC520に提供するためのソフトウェアであり、画面データ取得部5121、画面データ送信部5122、入力イベント受信部5123及び入力イベント生成部5124等の機能を有する。
画面共有クライアント522は、サーバPC510の表示装置に表示されている画面データをクライアントPC520の表示装置に表示させるためのソフトウェアであり、画面データ受信部5221、画面データ表示部5222、入力イベント取得部5223、及び入力イベント送信部5224等の機能を有する。
サーバPC510におけるOS通信部511、及びクライアントPC520におけるOS通信部521は、それぞれのOSによって提供される、所定のプロトコル(例えば、TCP/IP)によって通信を行うためのプログラムモジュールである。
サーバPC510の表示装置に表示されている画面データは、OSを介して画面データ取得部5121によって取得され、画面データ送信部5122によって画面共有クライアント522に送信される。
クライアントPC520において、画面共有サーバ512からの画面情報は、画面データ受信5221によって受信され、画面データ表示部5222によってクライアントPC520の表示装置に表示される。
クライアントPC520において表示された画面に対してマウス又はキーボード等による入力がなされると、その操作イベントは、入力イベント取得部5223によって検出され、入力イベント送信部5224によって画面共有サーバ512に送信される。
サーバPC510において、画面共有クライアント522からの操作イベントは、入力イベント受信部5123によって受信され、入力イベント生成部5124によってOSに通知される。
このようにして、クライアントPC520において、サーバPC510の画面を遠隔操作することができる。したがって、例えば、サーバPC510において起動されているアプリケーションの操作等をクライアントPC520において行うことができる。
なお、画面共有サーバ512が画面データを取得して送信する際には、逐一全画面の画面情報を送信するのではなく、画面の差分情報のみを取得及び送信する。これによって、送信データ及び画面共有クライアント522の処理負荷が軽減され、動作の高速化が図られている。
以下、本実施の形態において「画面共有サーバ」又は「画面共有クライアント」というときは、画面共有サーバ512又は画面共有クライアント522と同様の機能を有するソフトウェアモジュール、又は当該ソフトウェアモジュールがインストールされたコンピュータをいうものとする。
図3は、本発明の実施の形態における画面共有システムの構成例を示す図である。図3において画面共有システム1は、LAN(Local Area Network)又はインターネット等のネットワーク50(有線又は無線の別は問わない。)を介して相互に接続されているPC(Personal Computer)10a、10b、10c、及び10d等(以下、これらのPCを総称する場合「PC10」という。)より構成されている。各PC10には画面共有機能が実装されている。
図4は、本発明の実施の形態におけるPCのハードウェア構成例を示す図である。本実施の形態における各PC10は、それぞれバスBで相互に接続されているドライブ装置100と、補助記憶装置102と、メモリ装置103と、演算処理装置104と、インタフェース装置105と、表示装置106と、入力装置107と等を有するように構成される。
PC10での処理を実現するプログラムは、CD−ROM等の記録媒体101によって提供される。プログラムが記録された記録媒体101がドライブ装置100にセットされると、プログラムが記録媒体101からドライブ装置100を介して補助記憶装置102にインストールされる。
補助記憶装置102は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。メモリ装置103は、プログラムの起動指示があった場合に、補助記憶装置102からプログラムを読み出して格納する。演算処理装置104は、メモリ装置103に格納されたプログラムに従ってPC10に係る機能を実行する。インタフェース装置105は図2のネットワーク50に接続するためのインタフェースとして用いられる。
表示装置106はプログラムによるGUI等を表示する。入力装置107はキーボード及びマウス等で構成され、様々な操作指示を入力するために用いられる。
図5は、第一の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。図5において、PC10における画面共有機能は、画面共有サーバ11、画面共有クライアント12、共有PC管理部13、及び共有制御部14等より構成されている。
画面共有サーバ11は、図2において説明した画面共有サーバ512に相当し、当該PC10の表示装置106に表示されている画面情報を他のPC10に提供する。なお、画面共有サーバ11における画面データ取得部111、画面データ送信部112、入力イベント受信部113、入力イベント生成部114は、それぞれ図2の画面データ取得部5121、画面データ送信部5122、入力イベント受信部5123、及び入力イベント生成部5124に相当する。
画面共有クライアント12は、図2において説明した画面共有クライアント522に相当し、他のPC10の表示装置106に表示されている画面情報を当該PC10の表示装置106に表示させる。なお、画面共有クライアント12における画面データ受信部121、画面データ表示部122、入力イベント取得部123、入力イベント送信部124は、それぞれ図2の画面データ受信部5221、画面データ表示部5222、入力イベント取得部5223、入力イベント送信部5224に相当する。
共有PC管理部13は、共有接続管理部131、メンバ管理部132、及び操作管理部133等より構成される。
共有接続管理部131は、どのPC10の画面をどのPC10に共有させるかを管理する。メンバ管理部132は、例えば、PC10のIPアドレスとユーザとの組み合わせに対して参照(共有)権限の有無を管理する。操作権管理部133は、当該PC10が画面共有サーバである場合は、現在接続している各画面共有クライアント(各PC10)の共有ウィンドウに対する操作権の有無を管理する。一方、当該PC10が画面共有クライアントである場合は、現在接続している画面共有サーバに対する操作権の有無を管理する。すなわち、共有表示された画面共有クライアント側には当然に操作権が認められるわけではなく、操作権が許可された画面共有クライアントのみが共有画面を遠隔操作することができる。
これらの各部によって、共有PC管理部13は、メンバ管理部132で管理されている各PC10のIPアドレスとPC10のユーザに関する情報に基づいて、共有接続管理部131がいずれのPC10の画面をいずれのPCに対して共有表示するかを管理する。例えば、PC10aの画面を他のPC10の全てに共有表示を行ったり、PC10dにプロジェクタが接続されている場合に、PC10dのみに共有表示させたりすることを制御する。
共有制御部14は、ウィンドウ監視部141、ウィンドウ管理部142、及びレイや属性設定部143等より構成される。
ウィンドウ監視部141は、画面共有の開始後に、表示装置106にどのようなウィンドウが表示されているのか、また、どのようなウィンドウが表示されようとしているのか等、ウィンドウの状態を監視する。ウィンドウ管理部142は、どのメンバ(PC10)にどのウィンドウの共有を許可するかを管理する。共有の許否の判定は、予め設定されている設定情報に基づいて行われる。設定情報の具体例については後述する。レイヤ属性設定部143は、ウィンドウ管理部142によって共有が禁止されたウィンドウ(以下「非共有ウィンドウ」という。)のLayer属性(レイヤ属性)を変更することにより、非共有ウィンドウが他のPC10に共有(表示)されることを防止する。なお、レイヤ属性とは、透過率を指定してウィンドウを半透明にしたり、特定の色を透明色として任意のウィンドウの1色を透明にしたりするためにウィンドウに付与される属性である。ウィンドウにレイヤ属性を付与したり、状態を変化させたりするにはSetWindowLong関数でウィンドウの拡張スタイルにWS_EX_LAYERED追加し、SetLayeredAttributes関数やUpdateLayerdWindow関数等のAPI(Application Program Interface)を用いればよい。
レイヤ属性設定部143による非共有ウィンドウを実現するための原理について図6、図7、及び図8を用いて説明する。Windows(登録商標)OS(Operating System)においてレイヤ属性を持つウィンドウは、仮想的なメモリ領域においてデスクトップ描画メモリ領域とは別のメモリ領域(以下「レイヤ属性ウィンドウ描画メモリ領域」という。)を使って描画(記録)が行われる。ここで、デスクトップ描画メモリ領域とは、通常デスクトップ画面上に表示されるウィンドウが描画(記録)されるメモリ領域をいう。
図6は、仮想的なメモリ空間上におけるデスクトップ描画メモリ領域とレイヤ属性ウィンドウ描画メモリ領域との配置例を示す図である。図6に示されるように、例えば、メモリ領域1031が、デスクトップ描画メモリ領域、すなわち、通常のデスクトップ描画用のデバイスコンテキストのメモリ領域として用いられている場合、レイヤ属性ウィンドウ描画メモリ領域、すなわち、レイヤ属が付与されたウィンドウのデバイスコンテキストのメモリ領域は、メモリ領域1032のように、デスクトップ描画メモリ領域とは異なる領域に配置される。
図7は、デスクトップ描画メモリ領域とレイヤ属性ウィンドウ描画メモリ領域との用い方を説明するための図である。図7に示されるように、OS21は、デスクトップ描画メモリ領域1031における画面情報と、レイヤ属性1032における透明等の特殊な効果を有する画面情報とを合成し、合成された画面情報をディスプレイドライバ22を介してVRAM(Video RAM )23に書き込む。VRAM23に書き込まれた画面情報は、表示装置106に表示される。
ここで、本実施の形態における画面共有サーバ11は、デスクトップ描画メモリ領域1031に書き込まれた画面情報を共有画面の対象として他のPC10の画面共有クライアント12に転送する。
図8は、画面共有サーバが共有画面の対象とする画面情報を説明するための図である。図8に示されるように、画面共有サーバ11は、デスクトップ描画メモリ領域1031より共有画面の対象とする画面情報を取得し、レイヤ属性ウィンドウ描画メモリ領域1032からは、画面情報は取得しない。したがって、レイヤ属性ウィンドウ描画メモリ領域1032における画面情報、すなわち、レイヤ属性が付されたウィンドウは、他のPC10には共有表示されないということになる。第一の実施の形態のPC10は、この仕組みを利用する。
図9は、第一の実施の形態における画面共有関係を示す図である。図9に示されるように、第一の実施の形態では、PC10b、10c及び10dのそれぞれの画面共有クライアント12は、PC10aの画面共有サーバ11に接続している。したがって、各PC10の表示装置106における表示画面の状態は、例えば、図10のようになる。
図10は、第一の実施の形態における各PCにおける表示画面の状態の例を示す図である。図10において、デスクトップ画面107a、107b、107c、107dは、そえれぞれ、PC10a、10b、10c、10dの表示装置106に表示されているデスクトップ画面を示す。図9に示されるような画面共有関係にある場合、PC10aがウィンドウwa1及びwa2をデスクトップ画面107aに表示させると、他の表示画面にも同様にウィンドウwa1及びwa2が表示され、二つのウィンドウが4台のPC10によって共有される。
このような状況において、図11に示されるような画面共有を実現したいとする。図11は、一部のウィンドウが共有されない状態を示す図である。図11においては、ウィンドウwa2は、デスクトップ画面107aにのみ表示されており、他のデスクトップ画面には表示されていない。
以下、図11に示される状態を実現するための第一の実施の形態における画面共有システム1の処理手順について説明する。図12は、第一の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。
PC10b、10c、又は10dのいずれかの画面共有クライアント12がPC10aの画面共有サーバ11に接続することにより画面共有が開始されると、PC10aの共有制御部14におけるウィンドウ監視部141は、ウィンドウに関する各種のイベントの監視を開始する(S101)。
ウィンドウ監視部141は、ウィンドウに関するならかのイベントを検出すると、そのイベントに応じて処理を分岐させる(S102)。
例えば、PC10aのデスクトップ画面107a上に新たなウィンドウ(以下「カレントウィンドウ」という。)が表示されたことが検出されると、ウィンドウ監視部141は、カレントウィンドウの識別情報(ハンドル)をウィンドウ管理部142に通知する。
ウィンドウ管理部142は、通知されたハンドルに基づいて、カレントウィンドウを表示させようとしているアプリケーション(以下「カレントアプリケーション」という。)の実行ファイル名を調べ、その実行ファイル名と非共有の対象として予め設定登録されているアプリケーション(以下「非共有アプリケーション」という。)の実行ファイル名と比較し、両者が一致すればカレントウィンドウは非共有ウィンドウであると判定する(S103)。
例えば、メールソフト「MyMail.exe」とインスタントメッセンジャーソフト「MyIM.exe」が非共有アプリケーションとして登録されているとする。カレントアプリケーションの実行ファイル名がこれらと一致した場合、カレントウィンドウは、非共有ウィンドウであると判定される。
カレントウィンドウは、非共有ウィンドウであると判定された場合、レイヤ属性設定部143は、カレントウィンドウに対してレイヤ属性を付与する(S104)。これによって、カレントウィンドウの画面情報は、レイヤ属性ウィンドウ描画メモリ領域1032に書き込まれる。したがって、カレントウィンドウの画面情報は、画面共有サーバ11の取得対象とはされず、他のPC10の画面共有クライアント12には転送されない。
なお、ウィンドウ監視部141による監視は、画面共有が行われている間継続され(S101)、全ての画面共有クライアント12からの接続が切断された場合等、画面共有状態が解除されると(S102で「画面共有終了」)、終了する(S105)。
上述したように、第一の実施の形態における画面共有システム1によれば、任意のアプリケーションのウィンドウを効率的な処理によって非共有にすることができ、セキュアなコミュニケーションが可能となる。したがって、例えば、PC10aを画面共有サーバとして他のPC10と画面共有を行い、PC10aのユーザが他のPC10のユーザに対して共有画面を介して何らかの発表を行っている場合であっても、他のユーザに気付かれることなく非共有ウィンドウによって必要な情報を確認することができる。例えば、メーラを非共有のアプリケーションとして予め登録しておけば、そのメーラは自動的に非共有とされるため、非共有とされたメーラによって発表内容に関連するメールの内容を確認しても他のユーザにメールの内容を閲読されるのを防止することができる。したがって、メールの内容を確認するために、一旦画面共有サーバと画面共有クライアントとの間の接続を切断し、メールの内容の確認後に再度接続を行うといった手間が省くことが出来る。
また、新たなウィンドウの検出に応じ、予め登録されている設定情報に基づいて共有の許否が判定されるため、ウィンドウの非共有が自動的に実現される。
更に、発表中にメッセンジャーソフト等で他の参加者がヒントや答えを教えてくれた場合に、その画面が他のPC10に共有表示されてしまうことを防止することもできる。
また、第一の実施の形態のように、ウィンドウの画面情報をデスクトップ描画メモリ領域1031とは異なるメモリ領域に描画することにより当該ウィンドウを非共有とする方式によれば、当該ウィンドウと他の共有ウィンドウとが重なり合った場合でも、他の共有ウィンドウの画面情報には影響は及ばない。したがって、デスクトップ画面や他の共有ウィンドウの画像が乱れたりすることで、当該ウィンドウを非共有としていることを他のユーザに気付かれたりする可能性を低下させることができる。また、特許文献1において示されているような重複部分を再現するための特別な処理(例えば、画面情報のキャッシュ等の処理)は不要となる。
ところで、UltraVNC等では、ミラードライバを使ってGDI(Graphics Device Interface)命令を複製し、複製した命令でメモリ上に生成した仮想ディスプレイに描画を行い、その画面情報を画面共有サーバが取得するように構成されている。これは画面共有サーバが、物理ドライバに描画される画面情報を取得するよりも高速に画面情報を取得することを目的に開発されたものであるが、このミラードライバが利用されると、レイヤ属性を持つウィンドウの画面情報も画面共有サーバによって取得出来てしまう。そこで、このような場合には、ミラードライバをOFFすることによって本実施の形態を適用すればよい。
次に、第二の実施の形態について説明する。図13は、第二の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。図13中、図12と同一ステップには同一ステップ番号を付し、その説明は省略する。なお、画面共有システム1のシステム構成を始め、画面共有関係(図9)等、他の条件については第一の実施の形態と同様とする。
図13においては、ステップS103がステップS203に置き換わっている。ステップS203において、ウィンドウ管理部142は、ウィンドウ監視部141より通知されたウィンドウハンドルに基づいてカレントウィンドウのウィンドウ名(ウィンドウのタイトル名)を取得し、そのウィンドウ名が、予め登録されている非共有キーワードを含んでいるか否かに基づいてカレントウィンドウが非共有ウィンドウであるか否かを判定する。
ここで、ウィンドウ名とは、各ウィンドウを識別するための情報として各ウィンドウに付与される文字列をいい、一般的には、そのアプリケーションの操作対象とされているファイルのファイル名等、閲覧対象とされる文書の名前が用いられる。
また、非共有キーワードとは、例えば、「秘」、「重要」、又は「From ABCDカンパニー」等、予めユーザによって設定されているキーワードであり、ウィンドウ管理部142が管理している。
カレントウィンドウのウィンドウ名に非共有キーワードが含まれていた場合(S203でYES)、レイヤ属性設定部143は、カレントウィンドウにレイヤ属性を付与する(S104)。したがって、この場合、カレントウィンドウは、他のPC10には共有表示されない。
上述したように、第二の実施の形態における画面共有システム1によれば、非共有キーワードをウィンドウ名と比較することによって非共有の要否が判断される。したがって、同一のアプリケーションでも、操作対象とされる文書によって共有又は非共有の別を制御することができる。よって、例えば、共有表示されても構わないメールや文書は共有表示されるが、取引に関するメールや機密度の高いファイル等は共有表示されないようにすることが出来る。
なお、アプリケーションによっては、起動状態のまま(ウィンドウを表示したまま)操作対象とする文書等を変更することが可能なものがある。そのようなアプリケーションについては、ウィンドウ監視部141がウィンドウ名の変化を検出し、新たなウィンドウ名に非共有キーワードが含まれていない場合は、レイヤ属性を解除するといった処理を行ってもよい。こうすることで、例えば、ファイル名に非共有キーワードを含む文書が操作対象とされたために非共有ウィンドウとして表示されたアプリケーションにおいて、その後に操作対象の文書が変更された場合に、当該文書のファイル名に非共有キーワードが含まれていなければ、そのまま当該アプリケーションのウィンドウを共有状態に変更することが可能となる。
次に第三の実施の形態について説明する。図14は、第三の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。なお、画面共有システム1のシステム構成を始め、画面共有関係(図9)等、他の条件については第一の実施の形態と同様とする。
新たなウィンドウ(カレントウィンドウ)の表示が検出されると、レイヤ属性設定部143は、カレントウィンドウにレイヤ属性を付与する(S104)。これによって、カレントウィンドウは、一旦非共有とされる。
続いて、ウィンドウ管理部142は、カレントウィンドウの共有表示の許否をユーザに問い合わせるダイアログ(以下「共有許否ダイアログ」という。)をカレントウィンドウに重ねるようにして表示装置106に表示させる(S301)。
図15は、共有許否ダイアログの表示例を示す図である。図15において、ダイアログd1が共有許否ダイアログであり、ウィンドウwa2の共有の許否を問い合わせている。なお、レイヤ属性設定部143によって、共有許否ダイアログd1にレイヤ属性を付与するようにすることが望ましい。こうすることで、共有許否ダイアログd1が他のPC10に共有表示されるのを回避することができる。
共有許否ダイアログd1の問い合わせに対し、ユーザが共有を許可した場合(S303でYES)、レイヤ属性設定部143は、カレントウィンドウに付与されているレイヤ属性を解除する。これによって、カレントウィンドウは共有表示される。一方、ユーザが共有を許可しない場合、カレントウィンドウに対するレイヤ属性は付与されたままにされる。したがって、カレントウィンドウは非共有とされる。
上述したように、第三の実施の形態における画面共有システム1によれば、ウィンドウの表示の際に画面共有の許否をユーザに選択させることができる。
次に、第四の実施の形態について説明する。図16は、第四の実施の形態における非共有ウィンドウの表示例を示す図である。
第四の実施の形態において、ウィンドウ管理部142は非共有と判定されたウィンドウwa2のウィンドウ枠の幅を太くする等の視覚的な属性を変化させることによる装飾を行って、PC10aを利用しているユーザが各ウィンドウが共有表示されているのか、非共有なのかを視覚的に認識できるようにする。なお、画面共有システム1のシステム構成を始め、画面共有関係(図9)等、他の条件については第一の実施の形態等と同様とする。
ウィンドウ枠の幅を太くする以外にも、例えばWindouws(登録商標)環境であれば、SetLayeredAttributes関数を使って、非共有ウィンドウの透過率を50%等にして半透明表示にしてもよい。また、非共有ウィンドウのウィンドウ名の末尾に非共有ウィンドウであることが認識可能な文字列(例えば、「(非表示)」といった文字列)を追加してもよいし、非表示のポップアップを表示してもよい。
上述したように第四の実施の形態における画面共有システム1によれば、共有表示されているウィンドウと、非共有のウィンドウとを画面共有サーバのユーザに容易に認識させることができる。したがって、ユーザの誤操作を防止することができる。
ところで、上記第一から第四の実施の形態では、非共有ウィンドウに対するイベントの制御について明記されていなかった。すなわち、例えば、PC10aに非共有ウィンドウが表示されているとする。ここで、PC10bは、画面共有クライアントとしてPC10aに対する遠隔操作の操作権を持っているとすると、PC10bにおけるマウスイベントやキーボードイベントは、PC10aに転送される。そのマウスイベント等がたまたま非共有ウィンドウwa2の領域内で発生した場合は、非共有ウィンドウwa2がPC10bより遠隔操作されてしまい、予期せぬ事態が発生してしまう可能性がある。そこで、第五の実施の形態として、非共有ウィンドウが他のPC10より遠隔操作されるのを回避した例について説明する。なお、画面共有システム1のシステム構成を始め、画面共有関係(図9)等、他の条件については第一の実施の形態等と同様とする。
図17は、第五の実施の形態の画面共有サーバにおいて画面共有クライアントからのマウスイベントが受信された際の処理を説明するためのフローチャートである。
PC10aの画面共有サーバ11の入力イベント受信部113が、他のPC10における画面共有クライアント12であって操作権のあるものからマウスイベントを受信することにより図17の処理は開始される。
位置情報を含むマウスイベントを受信した入力イベント受信部113が、ウィンドウ管理部142に対してマウスイベントの座標が、非共有ウィンドウwa2の領域内であるか否かを問い合わせると、ウィンドウ管理部142は、受信されたマウスイベントより特定される当該マウスイベントの座標値と、非共有ウィンドウwa2の領域に関する座標値とに基づいて、当がマウスイベントが非共有ウィンドウwaに影響を与えるか、すなわち、当該マウスイベントが非共有ウィンドウwa2内であるか否かを判定する(S401)。
ウィンドウ管理部142によって、マウスイベントが非共有ウィンドウ内に含まれていると判定された場合(S402でYES)、入力イベント受信部113は、当該マウスイベントを破棄する(S403)。したがって、この場合、非共有ウィンドウwa2に対して当該マウスイベントは伝えられない。
一方、マウスイベントは非共有ウィンドウwa2内に含まれていないと判定された場合(S402でNO)、入力イベント受信部113は、当該マウスイベントを入力イベント生成部114に通知する。したがって、この場合、入力イベント生成部114によってマウスイベントがPC10aにおいて生成される(S404)。
また、図18は、第五の実施の形態の画面共有サーバにおいて画面共有クライアントからのキーボードイベントが受信された際の処理を説明するためのフローチャートである。
キーボードイベントを受信した入力イベント受信部113は、ウィンドウ管理部142に対してアクティブウィンドウ(操作対象とされているウィンドウ)が、非共有ウィンドウwa2であるか否かを問い合わせる(S501)。
ウィンドウ管理部142によって、アクティブウィンドウは非共有ウィンドウwa2であると判定された場合(S502でYES)、入力イベント受信部113は、当該キーボードイベントを破棄する(S503)。したがって、この場合、非共有ウィンドウwa2に対して当該キーボードイベントは伝えられない。
一方、アクティブウィンドウは非共有ウィンドウwa2ではないと判定された場合(S502でNO)、入力イベント受信部113は、当該キーボードイベントを入力イベント生成部114に通知する。したがって、この場合、入力イベント生成部114によってキーボードイベントがPC10aにおいて生成される(S504)。
上述したように第五の実施の形態における画面共有システム1によれば、画面共有サーバにおいて非共有表示されたウィンドウが、他の画面共有クライアントから誤って遠隔操作されてしまうのを防止することができる。
次に、第6の実施の形態について説明する。第五の実施の形態では、画面共有サーバ側が、非共有ウィンドウに対するイベントを制御する例について説明したが、第六の実施の形態では、画面共有クライアント側で非共有ウィンドウに対するイベントを制御する例を説明する。なお、画面共有システム1のシステム構成を始め、画面共有関係(図9)等、他の条件については第一の実施の形態等と同様とする。
図19は、第六の実施の形態の画面共有システムにおける処理を説明するためのフローチャートである。
画面共有サーバとしてのPC10aにおいてウィンドウ監視部141が、非共有ウィンドウの増減や移動等を検出すると、ウィンドウ管理部142は、デスクトップ画面107aのどの領域が非共有ウィンドウwa2によって占められているかに関する情報(以下「非共有領域情報」という。)を更新し(S602)、その非共有領域情報を画面共有クライアントである各PC10(PC10b、c及びd)に送信する(S603)。非共有領域情報を受信したPC10b等は、非共有領域情報を所定の管理領域(例えば、ファイル等)に設定する。
画面共有サーバより非共有領域情報を受信した各画面共有クライアントでは、以下のような処理によって非共有ウィンドウに対するイベントを制御する。
図20は、第六の実施の形態の画面共有クライアントにおいてマウスイベントが発生した際の処理を説明するためのフローチャートである。図20では、画面共有クライアントとしてPC10bを例とする。
PC10bにおいてマウスイベントが発生すると、PC10bの操作権管理部133は、PC10aに対する操作権の有無を判定する(S701)。操作権管理部133によって操作権は有ると判定された場合、PC10bの入力イベント取得部123は、マウスイベントが発生した座標が遠隔操作可能領域内であるかを判定する(S702)。ここで、遠隔操作可能領域とは、画面共有サーバ(PC10a)より受信した非共有領域情報によって特定される領域以外の領域をいう。すなわち、非共有ウィンドウによって占められる以外の領域が、遠隔操作可能領域に相当する。
マウスイベントが発生した座標が遠隔操作可能領域内であると判定された場合、PC10bの入力イベント送信部124は、当該マウスイベントをPC10aの画面共有サーバ11に送信する(S703)。
一方、PC10aに対する操作権は無いと判定された場合(S701でNO)、又は、マウスイベントが発生した座標が遠隔操作可能領域外であると判定された場合(S702でNO)は、PC10bの入力イベント送信部124は、当該マウスイベントを破棄する(S704)。したがって、この場合、当該マウスイベントはPC10aの画面共有サーバ11には送信されず、非共有ウィンドウwa2に対する遠隔操作は行われない。
上述したように第六の実施の形態における画面共有システム1によれば、第五の実施の形態における画面共有システムと同様、画面共有サーバにおいて非共有表示されたウィンドウが、他の画面共有クライアントから誤って遠隔操作されてしまうのを防止することができる。
次に、第七の実施の形態について説明する。図21は、第七の実施の形態における画面共有関係を示す図である。図21中、図9と同一部分には同一符号を付し、その説明は省略する。
図21に示されるように、第七の実施の形態では、第一の実施の形態における画面共有関係(図9)に加えて、PC10aの画面共有クライアント12は、PC10bの画面共有サーバ11に接続している。したがって、PC10b、PC10c、及びPC10dは、PC10aにおける共有ウィンドウを共有表示することができる。また、PC10aは、PC10bにおける共有ウィンドウを共有表示することができる。
このような共有関係は、例えば、PC10bのユーザが、発表者であるPC10aのユーザを支援する場合を想定するとよい。すなわち、PC10bのユーザがPC10bにおいて共有ウィンドウを表示させ、その共有ウィンドウを用いて発表者に対してアドバイスを行うような場合である。この場合、PC10bに表示された共有ウィンドウはPC10aに共有表示される。PC10aの画面共有クライアント12はPC10bの画面共有サーバ11に接続しているからである。しかし、PC10aに表示されたPC10bの共有ウィンドウは、PC10aを画面共有サーバとするPC10c及び10d等にも表示されてしまう。
図22は、第七の実施の形態における画面共有関係において発生し得る各PCにおける表示画面の状態の例を示す図である。図22中、図11と同一部分には同一符号を付し、その説明は適宜省略する。
図22において、ウィンドウwa1は、PC10aのデスクトップ画面107aに表示されている共有ウィンドウである。したがって、ウィンドウwa1は、デスクトップ画面107b、107c及び107dにも共有表示されている。なお、デスクトップ画面107bにおいて、ウィンドウwa1は閉じた状態にされているがこれは便宜的なものである。
一方、デスクトップ画面107a、107c及び107dに表示されているウィンドウwb1は、PC10bのデスクトップ画面107bが共有表示されているものである。
すなわち、ウィンドウwb1は、PC10aとPC10bとのクライアント・サーバ関係に基づいてデスクトップ画面107aに表示され、更に、PC10aと、PC10c及びPC10dとのクライント・サーバ関係に基づいてデスクトップ画面107c及び107dに表示されている。なお、ウィンドウwb1内には、デスクトップ画面107bにおいて表示されているウィンドウwb2が表示されている。
このように、図21に示されるような画面共有関係によれば、PC10bのデスクトップ画面107bに表示されるウィンドウが、PC10bの画面共有クライアントではないPC10c及び10dにも間接的に表示されてしまう可能性がある。これでは、PC10bのユーザが、ウィンドウwb2を用いてPC10aのユーザにアドバイス等を行おうとしても、その内容が他のユーザにも筒抜けとなってしまう。
そこで、第七の実施の形態では、図21に示されるような画面共有関係において、PC10bに表示されるウィンドウをPC10aにだけ共有表示させる例について説明する。なお、画面共有システム1のシステム構成等、他の条件については第一の実施の形態等と同様とする。
図23は、第七の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。図23中、図12と同一ステップには同一ステップ番号を付し、その説明は省略する。
図23においては、ステップS103がステップS703に置き換わっている。ウィンドウ監視部141によってカレントウィンドウの表示が検出されると(S102)、ウィンドウ管理部142は、新規ウィンドウが、画面共有クライアント12によって表示されたものであるか否かを判定する(S703)。
カレントウィンドウが画面共有クライアント12によって表示されたものである場合(S703でYES)、レイヤ属性設定部143は、カレントウィンドウにレイヤ属性を付与する(S104)。したがって、この場合、カレントウィンドウは、他のPC10には共有表示されない。
カレントウィンドウがwb1である場合、図23の処理によれば各PC10の表示状態は図24のようになる。
図24は、第七の実施の形態における画面共有システムにおける各PCの表示画面の状態の例を示す図である。図24中、図22と同一部分には同一符号を付し、その説明は省略する。
図24を図22と比較するとその違いが明確である。すなわち、図24においては、ウィンドウwb1及びウィンドウwa2は、デスクトップ画面107aにおいてのみ共有表示されている。これは、ウィンドウwb1及びwb2は、PC10aの画面共有クライアント12によって表示される際にレイヤ属性が付与されることにより、PC10aの画面共有サーバ11による他のPC10への転送対象とはならないからである。
上述したように、第七の実施の形態における画面共有システム1によれば、画面共有サーバとしてのPC10aが他のPC10の画面共有クライアントとなることにより、当該他のPC10のウィンドウが間接的に別のPC10に表示されてしまうのを回避することができる。したがって、例えば、発表者のPC画面を、他のPCの画面上に共有表示している場合において、豊富な情報量を有するコンテンツによって密かに発表者を支援することが可能となる。
次に、第八の実施の形態について説明する。図25は、第八の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。図25中、図5と同一部分には同一符号を付し、その説明は省略する。図25において、PC10には、新たにアノテーションアプリ16が追加されている。
アノテーションアプリ16は、マウスイベントを捕捉し、マウスの軌跡に応じた線データを他のPC10のアノテーションアプリ16に送信することにより、アノテーションを可能とするアプリケーションである。
例えば、PC10bからPC10aに対してアノテーションを行う場合を説明する。PC10bでアノテーションアプリ16を起動し、デスクトップ画面107bに対して描き込みが行われると、アノテーションアプリ16は、マウスイベントを捕捉し、その線データを画面共有サーバとしてのPC10aのアノテーションアプリ16に送信する。線データを受信したPC10aのアノテーションアプリ16は、線データが描画されたアノテーションアプリのウィンドウを、その位置や大きさを調整してデスクトップ画面107aに重ねて表示させる。なお、アノテーションアプリ16のウィンドウは、透過ウィンドウ(背景が透明なウィンドウ)として表示される。したがって、ユーザには線データのみが描画されたように見える。
なお、画面共有関係は、第七の実施の形態(図21)と同様であるとし、他の条件については第一の実施の形態等と同様であるとする。
図21のような画面共有関係において、PC10bにおいてアノテーションアプリ16が起動され、マウスによって描画が行われると図26に示されるような状況が発生し得る。
図26は、第八の実施の形態における画面共有関係において発生し得る各PCにおける表示画面の状態の例を示す図である。図26中、図11と同一部分には同一符号を付し、その説明は省略する。
図26において、線データlb1は、PC10bのデスクトップ画面107bにおいて描き込みが行われたものである。それが、PC10bのアノテーションアプリ16からPC10aのアノテーションアプリ16に転送されることによってデスクトップ画面107aに表示され、更に、デスクトップ画面107aに表示された線データlb1が、画面共有機能によってデスクトップ画面107c及び107dに表示される。
しかし、線データlb1がPC10a以外に表示されてしまうと不都合な場合がある。例えば、PC10bを操作しているユーザがアノテーションによって発表者(PC10a)を助ける場合等である。そこで、第八の実施の形態では、PC10bにおける描き込みが、PC10aにのみ表示される例を説明する。
図27は、第八の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。なお、PC10aでは、予めアノテーションアプリ16の画面共有の許否に関する設定がなされているものとする。
画面共有が開始されると、PC10aの共有制御部14におけるウィンドウ監視部141は、ウィンドウに関する各種のイベントの監視を開始する(S801)。
ウィンドウ監視部141は、PC10aのアノテーションアプリ16が起動されると(S802で「アノテーションアプリの起動」)、設定情報に基づいてアノテーションアプリ16の共有は許可されているか否かを判定する(S803)。
アノテーションアプリ16の共有が許可されていない場合(S803でYES)、レイヤ属性設定部143は、アノテーションアプリ16のウィンドウに対してレイヤ属性を付与する(S804)。これによって、PC10aにおけるアノテーションアプリ16の画面情報は、レイヤ属性ウィンドウ描画メモリ領域1032に書き込まれる。したがって、アノテーションアプリ16の画面情報は、画面共有サーバ11の取得対象とはされず、他のPC10の画面共有クライアント12には転送されない。
図27の処理によって、各PC10の表示状態は図28のようになる。図28は、第八の実施の形態における画面共有システムにおける各PCの表示画面の状態の例を示す図である。図28中、図26と同一部分には同一符号を付し、その説明は省略する。
図28を図26と比較するとその違いが明確である。すなわち、図28においては、線データlb1は、デスクトップ画面107aにおいてのみ表示されている。これは、デスクトップ画面107aにおいて線データlb1を表示させるPC10aのアノテーションアプリ16は、レイヤ属性が付与されることによりPC10aの画面共有サーバ11による他のPC10への転送対象とはならないからである。
上述したように第八の実施の形態におけるが面共有システム1によれば、画面共有サーバとしてPC10aが他のPC10の画面共有クライアントとなることにより、PC10aに対するアノテーションが別のPC10に表示されてしまうのを回避することができる。したがって、例えば、発表者の画面に一のユーザが他のユーザには見えない描き込みを行うことによって、発表者を密かに支援することが出来る。
なお、PC10aのアノテーションアプリ16の共有表示の許否は、上記のようにPC10a自身に設定できるようにしてもよいし、アノテーションの描き込みを行うPC10bが設定できるようにしてもよい。
図29は、第八の実施の形態においてアノテーションを行う側が共有の許否を設定する場合の各PCにおける画面共有機能の機能構成例を示す図である。図29中、図25と同一部分には同一符号を付し、その説明は省略する。
図29においては、非共有指示部19が新たに追加されている。非共有指示部19は、他のPC10のアノテーションアプリ16に対して非共有を指示するための機能を有する。
図30は、第八の実施の形態においてアノテーションを行う側が共有の許否を設定する場合の画面共有システムの処理手順を説明するためのフローチャートである。図30では、アノテーションを行う側がPC10bであり、アノテーションをされる側がPC10aである場合を例としている。
PC10bのアノテーションアプリ16が、PC10aのアノテーションアプリ16に対して接続要求を行うと(S811)、PC10aのアノテーションアプリ16は、接続要求を受け付け、セッションを開設後、接続完了通知をPC10bのアノテーションアプリ16に送信する(S812)。接続完了通知を受けたPC10bの非共有指示部19が、アノテーションの非共有をPC10aに対して指示すると(S813)、PC10aのレイヤ属性設定部143は、PC10aのアノテーションアプリ16にレイヤ属性を付与する。
このように、アノテーションの描き込みを行うPC10bよりアノテーションアプリ16の非共有の設定を行うことができる。
次に、第九の実施の形態について説明する。非共有にしたいアプリケーションのウィンドウをオーバーレイ表示によって表示すればハードウェア処理によってウィンドウの描画が実行されるため、デスクトップ描画メモリ領域1301に画面情報が書き込まれることはない。ここでは、オーバーレイ表示を実現するための手段としてDiretDrawを例とする。DirectDrawで描画するように実装すれば、DirectDrawによって描画命令が直接グラフィックアクセラレータに送信され、アクセラレータのハードウェア処理によってPCに接続された表示装置に描画されるので、画面共有サーバはその画面データを取得することが出来ないため、非共有にすることが出来る。
図31は、アプリケーションによる描画の仕組みを説明するための図である。一般的に、各種アプリケーションは、GDIによる描画命令(GDI描画命令)によってウィンドウの描画命令をOS21に対して発行する。GDI描画命令に基づいて生成される画面情報は、デスクトップ描画メモリ領域1031に記録される。
GDI描画命令ではなく、DirectDrawを用いてウィンドウを描画するようにアプリケーションを実装することもできる。DirectDrawによる描画命令(DirectDraw描画命令)は、ディスプレイドライバDirectDraw部222がその描画命令をサポートしている場合は、ディスプレイドライバDirectDraw部222に伝えられ、サポートされていない場合は、OS21を介してディスプレイドライバDDI(Display Driver Interface)221に伝えられる。この場合は、ディスプレイドライバDDI部221は、通常のデスクトップ描画メモリ領域1031を使用して、描画命令に基づく画面情報をVRAM23に記録する。
ディスプレイドライバDirectDraw部222は、DirectDraw描画命令に基づく画面情報をディスプレイアダプタハードウェア画像処理部24に生成させる。ディスプレイアダプタハードウェア画像処理部24によって生成された画面情報は、VRAM23に記録される。なお、VRAM23に記録された画面情報は、表示装置106に表示される。
したがって、非共有としたいアプリケーションをDirectDrawを使って描画するように実装しておけば、自分PC上で起動している画面共有アプリケーションを操作するつもりが、画面共有クライアントアプリケーション画面内に共有表示されている他のPCのそれを間違って操作してしまうことを防ぐことが出来る。
このように第九の実施の形態による画像共有システム1によれば、非共有にしたいアプリケーションを、オーバーレイで表示するよう実装することにより、ウィンドウを非共有にすることが可能となる。
次に、第十の実施の形態について説明する。図32は、第十の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。図32中、図5と同一部分には同一符号を付し、その説明は省略する。
図32においては、共有制御部14におけるレイヤ属性設定部143が、非共有設定部144に置き換わっている。非共有設定部144については、図33を参照しつつ説明する。
図33は、第十の実施の形態における非共有設定部の機能構成例を示す図である。図33において、非共有設定部144は、GDI描画命令フック部1441、描画命令変換部1422、及びDirectDraw描画命令部1443等より構成されている。
GDI描画命令フック部1441は、非共有に設定されたアプリケーションからのGDI描画命令をフックする。描画命令変換部1442は、フックされたGDI描画命令をDirectDraw描画命令に変換する。DirectDraw描画命令部1443は、描画命令変換部1442によって生成されたDirectDraw描画命令を呼び出すことにより、DirectDrawによって非共有アプリケーションのウィンドウの描画を実行する。
このように、非共有設定部144によれば、GDI描画命令がDirectDraw描画命令に変換されることにより、グラフィックアクセラレータのハードウェア処理によって表示装置106への描画が行われる。したがって、デスクトップ描画メモリ領域1031への画面情報の書き込みは行われず、画面共有サーバ11はその画面情報を取得することが出来ない。よって、非共有アプリケーションのウィンドウの共有表示を回避することができる。
なお、画面共有システム1のシステム構成を始め、画面共有関係(図9)等、他の条件については第一の実施の形態と同様とする。
図34は、第十の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。図34中、図12と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
図34では、ステップS104がステップS1004に置き換わっている。ウィンドウ管理部142は、カレントアプリケーションは非共有アプリケーションであると判定すると(S103でYES)、カレントアプリケーションのGDI描画命令を監視対象とするよう非共有設定部144に通知する(S1004)。
ウィンドウ管理部142からの通知を受けた非共有設定部144の処理について説明する。図35は、第十の実施の形態における非共有設定部の処理手順を説明するためのフローチャートである。
GDI描画命令フック部1441は、GDI描画命令を検出するとそのGDI描画命令が監視対象のアプリケーションからのものであるか否かを判定する(S1005)。GDI描画命令が監視対象のアプリケーションからのものであった場合、GDI描画命令フック部1441は、当該GDI描画命令をフックし、描画命令変換部1442が、当該GDI描画命令をDirectDraw描画命令に変換する(S1006)。なお、GDI描画命令フック部1441は、フックしたGDI描画命令はOS21には返却しない。
続いて、DirectDraw描画命令部1443は、描画命令変換部1442によって生成されたDirectDraw描画命令を呼び出す。これによってグラフィックアクセラレータによってウィンドウが描画される(S1007)。
一方、検出されたGDI描画命令が監視対象のアプリケーションによるものでなかった場合、GDIフック部1441は、当該GDI描画命令をOS21に返却する(S1008)。したがって、この場合、画面情報はデスクトップ描画メモリ領域1031に書き込まれ、画面共有サーバ11の取得対象とされることにより、画面共有される。
上述したように、第十の実施の形態における画面共有システム1によれば、非共有にしたい任意のアプリケーションのウィンドウを描画命令変換によってオーバーレイ描画することにより、非共有にすることが出来る。
次に、第十一の実施の形態について説明する。第十一の実施の形態は、第十の実施の形態に対して共有設定部144の機能構成例及びその処理手順が異なる。
図36は、第十一の実施の形態における非共有設定部の機能構成例を示す図である。図36では、描画命令変換部1442が仮想描画部1444に置き換わっている。仮想描画部1444は、メモリ上の仮想的なディスプレイに対して画面情報をビットマップデータとして描画する。
図37は、第十一の実施の形態における非共有設定部の処理手順を説明するためのフローチャートである。図37中、図35と同一ステップには同一ステップ番号を付し、その説明は適宜省略する。
GDI描画命令が監視対象のアプリケーションからのものであった場合(S1005でYES)、GDI描画命令フック部1441は、当該GDI描画命令をフックし、仮想描画部1444が、当該GDI描画命令に基づいてビットマップデータを仮想的なディスプレイに描画する(S1016)。なお、GDI描画命令フック部1441は、フックしたGDI描画命令はOS21には返却しない。
続いて、DirectDraw描画命令部1443は、仮想的なディスプレイよりビットマップデータを取得し(S1017)、そのビットマップデータのDirectDrawによる描画命令を呼び出す。これによって、仮想的なディスプレイのビットマップデータがグラフィックアクセラレータによって表示装置106に描画される(S1018)。
上述したように、第十一の実施の形態における画面共有システム1によれば、非共有にしたい任意のアプリケーションのウィンドウをオーバーレイ描画することにより、非共有にすることが出来る。
次に、第十二の実施の形態について説明する。第十二の実施の形態では、第一の実施の形態と同様の画面共有関係(図9)を維持しつつ、図38に示されるように特定のPC(PC10b)にのみPC10aの画面を共有させる例について説明する。
図38は、複数の画面共有クライアントのうち特定の画面共有クライアントのみに画面共有を許可した場合の各PCの表示画面の状態を示す図である。
図38中、図10と同一部分には同一符号を付し、その説明は省略する。図38において、ウィンドウwa4は、PC10aのデスクトップ画面107aにおいて表示されているものであるが、デスクトップ画面107bにおいてのみ共有表示されており、他のデスクトップ画面には共有表示されていない。このように、複数の画面共有クライアントが接続されている場合に、特定の画面共有クライアントとのみ画面を共有することを、以下「秘匿共有」という。
図39は、第十二の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。図39中、図5と同一部分には同一符号を付し、その説明は省略する。
図39においては、第2画面共有サーバ17が新たな構成要素とされている。第2画面共有サーバ17は、画面共有サーバ11と同様の機能構成し、画面情報を他のPC10に転送する。但し、第2画面共有サーバ17が転送の対象とする画面情報は、画面共有サーバ11と異なる。
図40は、第2画面共有サーバが転送対象とする画面情報を説明するための図である。図40に示されるように、画面共有サーバ11の画面データ取得部11は、転送対象とする画面情報をデスクトップ描画メモリ領域1031より取得するのに対し、第2画面共有サーバ17の画面データ取得部171は、レイヤ属性ウィンドウ描画メモリ領域1032より取得する。
また、図39において、ウィンドウ管理部142は、デスクトップ画面に表示される各ウィンドウの共有の許否に関する設定情報を画面共有クライアント毎に管理している。
なお、画面共有システム1のシステム構成を始め、画面共有関係(図9)等、他の条件については第一の実施の形態と同様とする。
図41は、第十二の実施の形態の画面共有システムにおいて秘匿共有を実現するための処理手順を説明するためのフローチャートである。
秘匿共有の対象として設定されているアプリケーションのウィンドウが起動されると、レイヤ属性設定部143は、当該ウィンドウにレイヤ属性を付与し、当該ウィンドウを非共有ウィンドウとする(S1201)。したがって、この段階では、PC10aに表示された非共有ウィンドウは、他のPC10には共有表示されない。
続いて、ウィンドウ管理部142は、第2画面共有サーバ17を起動する(S1202)。なお、第2画面共有サーバ17は、デスクトップ全体ではなく、秘匿共有にしたアプリケーションの画面情報のみを取得するようにする。一般に、画面共有サーバは、デスクトップ画面全体を画面共有対象とすると、レイヤ属性を持つウィンドウの画面情報が合成されたデスクトップ画面の画面情報を得ることは出来ないが、画面情報の取得元を個別のアプリケーションのウィンドウに限定することで、このレイヤ属性ウィンドウ描画メモリ領域1032から特定のウィンドウの画面情報を取得することが出来る。例えば、GetWindowDCというWindows(登録商標)のAPI関数を用いることによって指定したアプリケーションのデバイスコンテキストを取得することが出来、これにより秘匿共有の対象とされたアプリケーションウィンドウのビットマップデータを得ることが出来る。
秘匿共有のアプリケーションウィンドウの画面情報を取得した第2画面共有サーバ17は、秘匿共有が許可されたPC10の画面共有クライアント12にのみ画面情報を転送する。したがって、当該画面共有クライアント12を有するPC10のみが秘匿共有を行うことができる。すなわち、図38は、PC10bのみが秘匿共有が許可された例を示している。他のPC10(PC10c及びPC10d)には、秘匿共有のアプリケーションのウィンドウwa4は表示されないが、共有が許可されているアプリケーションのウィンドウwa1は画面が乱れることなく共有表示される。
その後、秘匿共有を行っているアプリケーションが終了した場合や、秘匿共有を中止して全ての画面共有クライアントに対して共有を許可した場合、又は全ての画面共有クライアントに対して当該アプリケーションのウィンドウが非共有とされた場合(S1203でYES)、第2画面共有サーバ17は終了する(S1204)。
上述したように、第十二の実施の形態における画面共有システム1によれば、レイヤ属性が付されたウィンドウの画面情報を取得するに第2画面共有サーバ17を設けることにより、通常であれば共有できないウィンドウを、特定のPC10に限って共有表示可させることができる。
なお、上記においては、一つのウィンドウを秘匿共有する方法を示したが、第3画面共有サーバ、第4画面共有サーバ・・・と画面共有サーバの起動数を増やすことにより、複数のウィンドウを秘匿共有させてもよい。
次に、第十三の実施の形態について説明する。第十三の実施の形態では、第九の実施の形態のように、DirectDrawによってウィンドウを描画するアプリケーションのウィンドウを特定の画面共有クライアントにのみ共有表示させる例について説明する。
図42は、第十三の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。図42中、図39と同一部分には同一符号を付し、その説明は省略する。
図42においては、仮想描画部18が新たな構成要素とされている。また、共有制御部14において、レイヤ属性設定部143が共有設定部145に置き換わっている。
図43は、第十三の実施の形態における共有設定部の機能構成例を示す図である。図43において、共有設定部145は、DirectDraw描画命令フック部1451、描画命令変換部1452、及びDirectDraw描画命令部1453等より構成されている。
図44は、第十三の実施の形態の画面共有システムにおいて秘匿共有を実現するための処理手順を説明するためのフローチャートである。
非共有アプリケーションがDirectDrawでウィンドウを描画するアプリケーションであった場合、ウィンドウ管理部142は共有設定部145に対して当該アプリケーションからのDirectDraw描画命令の監視を指示すると共に(S1301)、第2画面共有サーバ17を起動する(S1302)。後述するように、この段階において、特定の画面共有クライアントに対してのみ当該アプリケーションウィンドウの秘匿共有が実行される。
その後、秘匿共有を行っているアプリケーションが終了した場合や、秘匿共有を中止して全ての画面共有クライアントに対して共有を許可した場合、又は全ての画面共有クライアントに対して当該アプリケーションのウィンドウが非共有とされた場合(S1303でYES)、第2画面共有サーバ17は終了し、秘匿共有の対象となっていたアプリケーションのDirectDraw描画命令を監視対象から外す(S1204)。
続いて、ステップS1301において、DirectDraw描画命令の監視を指示された共有設定部145による処理手順を説明する。図45は、第十三の実施の形態における共有設定部の処理手順を説明するためのフローチャートである。
DirectDraw描画命令フック部1451は、アプリケーションからのDirectDraw描画命令をフックし、フックしたDirectDraw描画命令が監視対象とされているアプリケーションによるものでない場合は(S1311でNO)、DirectDraw描画命令をOS21に返却する(S1312)。これによって、このアプリケーションはグラフィックアクセラレータによって表示装置106に描画される。すなわち、いずれの画面共有クライアント上でも非共有のままになる。
一方、フックされたDirectDraw描画命令が監視対象とされているアプリケーションによるものである場合(S1311でYES)、フックされたDirectDraw描画命令はOS21に返却されずに、描画命令変換部1452によってGDI描画命令に変換される(S1314)。仮想描画部18は、変換後のGDI描画命令に基づいて、メモリ上の仮想的なディスプレイに対して描画を行う(S1314)。
第2画面共有サーバ17は、仮想的なディスプレイの画面情報を取得し、秘匿共有を行っている画面共有クライアントに対してのみ当該画面情報を転送する。その結果、画面共有サーバ11が起動しているPC10aでは、秘匿共有アプリケーションのウィンドウはDirectDrawによって表示装置106に描画される。したがって、秘匿共有が許可されていない画面共有クライアントには、当該アプリケーションウィンドウは表示されない。しかし、秘匿共有が許可されている画面共有クライアントには当該アプリケーションウィンドウが表示される。
上述したように、第十三の実施の形態における画面共有システム1によれば、オーバーレイ描画によって非共有とされるウィンドウを、特定の画面共有クライアントに対してのみ共有表示させることができる。
次に、第十四の実施の形態について説明する。第十四の実施の形態では、第十の実施の形態のように、GDI描画命令がDirectDraw描画命令に変換されることによって非共有とされているウィンドウを、特定の画面共有クライアントにのみ秘匿共有させる例について説明する。
図46は、第十四の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。図46中、図42と同一部分には同一符号を付し、その説明は省略する。
図42においては、共有制御部14において、共有設定部145が非共有設定部144に置き換わっている。なお、非共有設定部144は、図32において説明した非共有設定部144に相当する。
図47は、第十四の実施の形態における非共有設定部の機能構成例を示す図である。図47中、図33と同一部分には同一符号を付し、その説明は省略する。
図48は、第十四の実施の形態の画面共有システムにおいて秘匿共有を実現するための処理手順を説明するためのフローチャートである。
非共有アプリケーションが起動されると、ウィンドウ管理部142は、非共有設定部144に対して当該アプリケーションからのGDI描画命令の監視を指示すると共に(S1401)、第2画面共有サーバ17を起動する(S1402)。後述するように、この段階において、特定の画面共有クライアントに対してのみ当該アプリケーションウィンドウの秘匿共有が実行される。
その後、秘匿共有を行っているアプリケーションが終了した場合や、秘匿共有を中止して全ての画面共有クライアントに対して共有を許可した場合、又は全ての画面共有クライアントに対して当該アプリケーションのウィンドウが非共有とされた場合(S1403でYES)、第2画面共有サーバ17は終了し、秘匿共有の対象となっていたアプリケーションのGDI描画命令を監視対象から外す(S1404)。
続いて、ステップS1401において、GDI描画命令の監視を指示された非共有設定部144による処理手順を説明する。図49は、第十四の実施の形態における非共有設定部の処理手順を説明するためのフローチャートである。
GDI描画命令フック部1441は、アプリケーションからのGDI描画命令をフックして監視している。GDI描画命令フック部1441は、検出されたGDI描画命令が監視対象とされたアプリケーションのGDI描画命令でない場合は(S1411でNO)GDI描画命令をOS21に返却する(S1412)。これによって、このアプリケーションの画面情報はデスクトップ描画メモリ領域1031に描画される。したがって、当該アプリケーションウィンドウは画面共有される。
一方、検出されたGDI描画命令が監視対象とされたアプリケーションによるGDI描画命令の場合(S1411でYES)、フックした描画命令はOS21に返却されずに、GDI描画命令フック部1441によって複製される(S1413)。複製元又は複製先のいずれか一方のGDI描画命令は仮想描画部18に出力され、他方は描画命令変換部1442に出力される。
仮想描画部18は、GDI描画命令に基づいて、メモリ上に作成された仮想的なディスプレイ上にビットマップデータの描画を行う(S1414)。描画命令変換部1442は、GDI描画命令をDirectDraw描画命令に変換する(S1415)。DirectDraw描画命令部1443が、変換されたDirectDraw描画命令をOS21に対して発行すると、その描画命令に基づく画面情報はグラフィックアクセラレータによって、表示装置106に描画される(S1416)。
仮想描画部18によって仮想的なディスプレイに描画された画面情報は、第2画面共有サーバ17によって取得される。第2画面共有サーバ17は秘匿共有を行っている画面共有クライアントにのみその画面情報を転送する。
その結果、画面共有サーバ11が起動しているPC10aでは、秘匿共有アプリケーションのウィンドウはDirectDrawによって表示装置106に描画される。したがって、秘匿共有が許可されていない画面共有クライアントには、当該アプリケーションウィンドウは表示されない。しかし、秘匿共有が許可されている画面共有クライアントには当該アプリケーションウィンドウが表示される。
上述したように、第十四の実施の形態における画面共有システム1によれば、オーバーレイ描画によって非共有とされるウィンドウを、特定の画面共有クライアントに対してのみ共有表示させることができる。
次に、第十五の実施の形態について説明する。第十五の実施の形態は、第十四の実施の形態の変形例であるため、相違点について説明する。
図50は、第十五の実施の形態における非共有設定部の機能構成例を示す図である。図50中、図47と同一部分には同一符号を付し、その説明は省略する。図50における非共有設定部144は、描画命令変換部1442を有していない点において図47と異なる。
図51は、第十五の実施の形態における非共有設定部の処理手順を説明するためのフローチャートである。
GDI描画命令フック部1441は、アプリケーションからのGDI描画命令をフックして監視している。GDI描画命令フック部1441は、検出されたGDI描画命令が監視対象とされたアプリケーションのGDI描画命令でない場合は(S1511でNO)GDI描画命令をOS21に返却する(S1512)。これによって、このアプリケーションの画面情報はデスクトップ描画メモリ領域1031に描画される。したがって、当該アプリケーションウィンドウは画面共有される。
一方、検出されたGDI描画命令が監視対象とされたアプリケーションによるGDI描画命令の場合(S1511でYES)、フックした描画命令はOS21に返却されずに、仮想描画部18に出力される。仮想描画部18は、GDI描画命令に基づいて、メモリ上に作成された仮想的なディスプレイ上にビットマップデータの描画を行う(S1513)。第2画面共有サーバ17は、仮想的なディスプレイの画面情報(ビットマップデータ)を取得して、秘匿共有を行っている画面共有クライアントにのみその画面情報を転送する。
一方、DirectDraw描画命令部1443は、仮想的なディスプレイの画面情報(ビットマップデータ)を取得する(S1514)。続いて、DirectDraw描画命令部1443は、取得したビットマップデータのDirectDrawによる描画命令を呼び出す。これによって、仮想的なディスプレイのビットマップデータがグラフィックアクセラレータによって表示装置106に描画される(S1515)。
その結果、画面共有サーバ11が起動しているPC10aでは、秘匿共有アプリケーションのウィンドウはDirectDrawによって表示装置106に描画される。したがって、秘匿共有が許可されていない画面共有クライアントには、当該アプリケーションウィンドウは表示されない。しかし、秘匿共有が許可されている画面共有クライアントには当該アプリケーションウィンドウが表示される。
上述したように、第十五の実施の形態における画面共有システム1によれば、第十四の実施の形態と同様、オーバーレイ描画によって非共有とされるウィンドウを、特定の画面共有クライアントに対してのみ共有表示させることができる。
なお、画面共有の仕組みとして、画面共有サーバは、デスクトップ画面の画面情報をビットマップ画像として取得してもよいし、GDI等の描画命令をOSからフックして取得し、取得された描画命令をネットワークを介して画面共有クライアントに送信してもよい。後者の場合、画面共有クライアントは受信したGDI描画命令を使って描画を行うことによって共有画面を表示させることができる。
また、オーバーレイ描画手段としては、DirectDrawの他、Direct3DやDirectX等のそのたのものを用いても良い。
以上、本発明の実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
共有ウィンドウと非共有ウィンドウとが重なっている様子を示す図である。 VNCの動作原理を説明するための図である。 本発明の実施の形態における画面共有システムの構成例を示す図である。 本発明の実施の形態におけるPCのハードウェア構成例を示す図である。 第一の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。 仮想的なメモリ空間上におけるデスクトップ描画メモリ領域とレイヤ属性ウィンドウ描画メモリ領域との配置例を示す図である。 デスクトップ描画メモリ領域とレイヤ属性ウィンドウ描画メモリ領域との用い方を説明するための図である。 画面共有サーバが共有画面の対象とする画面情報を説明するための図である。 第一の実施の形態における画面共有関係を示す図である。 第一の実施の形態における各PCにおける表示画面の状態の例を示す図である。 一部のウィンドウが共有されない状態を示す図である。 第一の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。 第二の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。 第三の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。 共有許否ダイアログの表示例を示す図である。 第四の実施の形態における非共有ウィンドウの表示例を示す図である。 第五の実施の形態の画面共有サーバにおいて画面共有クライアントからのマウスイベントが受信された際の処理を説明するためのフローチャートである。 第五の実施の形態の画面共有サーバにおいて画面共有クライアントからのキーボードイベントが受信された際の処理を説明するためのフローチャートである。 第六の実施の形態の画面共有システムにおける処理を説明するためのフローチャートである。 第六の実施の形態の画面共有クライアントにおいてマウスイベントが発生した際の処理を説明するためのフローチャートである。 第七の実施の形態における画面共有関係を示す図である。 第七の実施の形態における画面共有関係において発生し得る各PCにおける表示画面の状態の例を示す図である。 第七の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。 第七の実施の形態における画面共有システムにおける各PCの表示画面の状態の例を示す図である。 第八の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。 第八の実施の形態における画面共有関係において発生し得る各PCにおける表示画面の状態の例を示す図である。 第八の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。 第八の実施の形態における画面共有システムにおける各PCの表示画面の状態の例を示す図である。 第八の実施の形態においてアノテーションを行う側が共有の許否を設定する場合の各PCにおける画面共有機能の機能構成例を示す図である。 第八の実施の形態においてアノテーションを行う側が共有の許否を設定する場合の画面共有システムの処理手順を説明するためのフローチャートである。 アプリケーションによる描画の仕組みを説明するための図である。 第十の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。 第十の実施の形態における非共有設定部の機能構成例を示す図である。 第十の実施の形態における画面共有システムの処理手順を説明するためのフローチャートである。 第十の実施の形態における非共有設定部の処理手順を説明するためのフローチャートである。 第十一の実施の形態における非共有設定部の機能構成例を示す図である。 第十一の実施の形態における非共有設定部の処理手順を説明するためのフローチャートである。 複数の画面共有クライアントのうち特定の画面共有クライアントのみに画面共有を許可した場合の各PCの表示画面の状態を示す図である。 第十二の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。 第2画面共有サーバが転送対象とする画面情報を説明するための図である。 第十二の実施の形態の画面共有システムにおいて秘匿共有を実現するための処理手順を説明するためのフローチャートである。 第十三の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。 第十三の実施の形態における共有設定部の機能構成例を示す図である。 第十三の実施の形態の画面共有システムにおいて秘匿共有を実現するための処理手順を説明するためのフローチャートである。 第十三の実施の形態における共有設定部の処理手順を説明するためのフローチャートである。 第十四の実施の形態の各PCにおける画面共有機能の機能構成例を示す図である。 第十四の実施の形態における非共有設定部の機能構成例を示す図である。 第十四の実施の形態の画面共有システムにおいて秘匿共有を実現するための処理手順を説明するためのフローチャートである。 第十四の実施の形態における非共有設定部の処理手順を説明するためのフローチャートである。 第十五の実施の形態における非共有設定部の機能構成例を示す図である。 第十五の実施の形態における非共有設定部の処理手順を説明するためのフローチャートである。
符号の説明
1 画面共有システム
10a、10b、10c、10d PC
11、512 画面共有サーバ
12、522 画面共有クライアント
13 共有PC管理部
14 共有制御部
15 ソケット通信部
16 アノテーションアプリ
17 第2画面共有サーバ
18 仮想描画部
19 非共有指示部
21 OS
22 ディスプレイドライバ
23 VRAM
50 ネットワーク
100 ドライブ装置
101 記録媒体
102 補助記憶装置
103 メモリ装置
104 演算処理装置
105 インタフェース装置
106 表示装置
107 入力装置
111、5121 画面データ取得部
112、5122 画面データ送信部
113、5123 入力イベント受信部
114、5124 入力イベント生成部
121、5221 画面データ受信部
122、5222 画面データ表示部
123、5223 入力イベント取得部
124、5224 入力イベント送信部
131 共有接続管理部
132 メンバ管理部
133 操作権管理部
141 ウィンドウ監視部
142 ウィンドウ管理部
143 レイヤ属性設定部
144 非共有設定部
145 共有設定部
510 サーバPC
511、521 OS通信部
520 クライアントPC
1031 デスクトップ描画メモリ領域
1032 レイヤ属性ウィンドウ描画メモリ領域
1441 GDI描画命令フック部
1442 描画命令変換部
1443 DirectDraw描画命令部
1444 仮想描画部
1451 DirectDraw描画命令フック部
1452 描画命令変換部
1453 DirectDraw描画命令部
B バス

Claims (32)

  1. 表示装置に表示させる画面情報が記録された第一のメモリ領域より該画面情報を取得し、取得された画面情報をネットワークを介して接続する他のコンピュータに送信することにより前記他のコンピュータに前記画面情報を共有表示させる画面共有サーバ手段と、
    前記他のコンピュータに共有表示させない非共有画面の画面情報について前記第一のメモリ領域への記録は行わないで前記表示装置に表示させる非共有表示制御手段とを有することを特徴とする画面共有サーバ装置。
  2. 前記非共有表示制御手段は、前記非共有画面の画面情報を前記第一のメモリ領域とは異なる前記第二のメモリ領域に記録させることを特徴とする請求項1記載の画面共有サーバ装置。
  3. 前記第二のメモリ領域に記録された画面情報を取得し、取得された前記画面情報をネットワークを介して接続する他のコンピュータに送信する第二の画面共有サーバ手段を有することを特徴とする請求項2記載の画面共有サーバ装置。
  4. 前記非共有表示制御手段は、前記非共有画面に対してレイヤ属性を付与することにより、前記非共有画面の画面情報の前記第一のメモリ領域への記録は行わせないことを特徴とする請求項1乃至3いずれか一項記載の画面共有サーバ装置。
  5. 前記非共有表示制御手段は、前記非共有画面をオーバーレイ表示させることにより、前記非共有画面の画面情報の前記第一のメモリ領域への記録は行わせないことを特徴とする請求項1乃至4いずれか一項記載の画面共有サーバ装置。
  6. 前記非共有表示制御手段は、
    前記画面情報の前記第一のメモリ領域への描画命令をフックする描画命令フック手段と、
    フックされた前記描画命令をオーバーレイ表示に対応する描画命令に変換する描画命令変換手段と、
    前記描画命令変換手段によって変換された前記オーバーレイ表示に対応する描画命令に基づいて、前記画面情報を前記表示装置にオーバーレイ表示させるオーバーレイ表示手段とを有することを特徴とする請求項5記載の画面共有サーバ装置。
  7. 前記非共有表示制御手段は、
    オーバーレイ表示に対する描画命令をフックするオーバーレイ描画命令フック手段と、
    前記オーバーレイ表示に対する描画命令に基づいて前記第二のメモリ領域に前記画面情報を描画する描画手段とを有することを特徴とする請求項3記載の画面共有サーバ装置。
  8. 前記非共有表示制御手段は、
    前記画面情報の前記第一のメモリ領域への描画命令をフックする描画命令フック手段と、
    前記描画命令フック手段によってフックされた前記描画命令に基づいて前記第二のメモリ領域に前記画面情報を描画する描画手段と、
    前記描画命令フック手段によってフックされた前記描画命令をオーバーレイ表示に対する描画命令に変換する描画命令変換手段と、
    前記描画命令変換手段によって変換された前記オーバーレイ表示に対する描画命令に基づいて、前記画面情報を前記表示装置にオーバーレイ表示させるオーバーレイ表示手段とを有することを特徴とする請求項3記載の画面共有サーバ装置。
  9. 前記画面共有サーバ手段は、画面共有を行っている前記他のコンピュータにおける入力イベントの位置情報を含むイベント情報を受信するイベント情報受信手段と、
    前記イベント情報に基づいて前記入力イベントに対応するイベントを発生させるイベント発生手段とを有し、
    有し、
    前記イベント情報受信手段によって受信された前記イベント情報に含まれている前記位置情報に基づいて、前記入力イベントが前記非共有画面に影響すると判定された場合は、前記イベント発生手段は前記入力イベントに対応するイベントを発生させないことを特徴とする請求項1乃至8いずれか一項記載の画面共有サーバ装置。
  10. 前記共有表示の許否を判定するための文字列を管理する文字列管理手段を有し、
    前記非共有表示制御手段は、表示されるウィンドウに関する文字列と前記文字列管理手段に管理されている文字列との比較に基づいて、前記ウィンドウに係る前記画面情報を前記第一のメモリ領域に記録するか否かを判断することを特徴とする請求項1乃至9いずれか一項記載の画面共有サーバ装置。
  11. 前記非共有表示制御手段は、表示されるウィンドウに係るアプリケーションの識別名と前記文字列管理手段に管理されている文字列との比較に基づいて、前記ウィンドウに係る前記画面情報を前記第一のメモリ領域に記録するか否かを判断することを特徴とする請求項10記載の画面共有サーバ装置。
  12. 前記非共有表示制御手段は、表示されるウィンドウの名前と前記文字列管理手段に管理されている文字列との比較に基づいて、前記ウィンドウに係る前記画面情報を前記第一のメモリ領域に記録するか否かを判断することを特徴とする請求項10又は11記載の画面共有サーバ装置。
  13. 前記非共有表示制御手段は、ウィンドウの表示に際し当該ウィンドウの前記共有表示の許否をユーザに入力させることを特徴とする請求項1乃至12いずれか一項記載の画面共有サーバ装置。
  14. ネットワークを介して接続する他のコンピュータより画面情報を受信し、受信された画面情報に基づいて前記表示装置への表示を行なう画面共有クライアント手段を有し、
    前記非共有表示制御手段は、前記画面共有クライアント手段が受信した前記画面情報については前記第一のメモリ領域への記録は行わないで前記表示装置に表示させることを特徴とする請求項1乃至13いずれか一項記載の画面共有サーバ装置。
  15. 前記非共有表示制御手段は、前記非共有画面の視覚的な属性を共有表示される画面と異なるものとすることを特徴とする請求項1乃至14いずれか一項記載の画面共有サーバ装置。
  16. ネットワークを介して接続する他のコンピュータとの画面共有を実行する画面共有サーバ装置における画面共有方法であって、
    表示装置に表示させる画面情報が記録された第一のメモリ領域より該画面情報を取得し、取得された画面情報をネットワークを介して接続する他のコンピュータに送信することにより前記他のコンピュータに前記画面情報を共有表示させる画面共有サーバ手順と、
    前記他のコンピュータに共有表示させない非共有画面の画面情報について前記第一のメモリ領域への記録は行わないで前記表示装置に表示させる非共有表示制御手順とを有することを特徴とする画面共有方法。
  17. 前記非共有表示制御手順は、前記非共有画面の画面情報を前記第一のメモリ領域とは異なる前記第二のメモリ領域に記録させることを特徴とする請求項16記載の画面共有方法。
  18. 前記第二のメモリ領域に記録された画面情報を取得し、取得された前記画面情報をネットワークを介して接続する他のコンピュータに送信する第二の画面共有サーバ手順を有することを特徴とする請求項17記載の画面共有方法。
  19. 前記非共有表示制御手順は、前記非共有画面に対してレイヤ属性を付与することにより、前記非共有画面の画面情報の前記第一のメモリ領域への記録は行わせないことを特徴とする請求項16乃至18いずれか一項記載の画面共有方法。
  20. 前記非共有表示制御手順は、前記非共有画面をオーバーレイ表示させることにより、前記非共有画面の画面情報の前記第一のメモリ領域への記録は行わせないことを特徴とする請求項16乃至19いずれか一項記載の画面共有方法。
  21. 前記非共有表示制御手順は、
    前記画面情報の前記第一のメモリ領域への描画命令をフックする描画命令フック手順と、
    フックされた前記描画命令をオーバーレイ表示に対応する描画命令に変換する描画命令変換手順と、
    前記描画命令変換手順において変換された前記オーバーレイ表示に対応する描画命令に基づいて、前記画面情報を前記表示装置にオーバーレイ表示させるオーバーレイ表示手順とを有することを特徴とする請求項20記載の画面共有方法。
  22. 前記非共有表示制御手順は、
    オーバーレイ表示に対する描画命令をフックするオーバーレイ描画命令フック手順と、
    前記オーバーレイ表示に対する描画命令に基づいて前記第二のメモリ領域に前記画面情報を描画する描画手順とを有することを特徴とする請求項18記載の画面共有方法。
  23. 前記非共有表示制御手順は、
    前記画面情報の前記第一のメモリ領域への描画命令をフックする描画命令フック手順と、
    前記描画命令フック手順においてフックされた前記描画命令に基づいて前記第二のメモリ領域に前記画面情報を描画する描画手順と、
    前記描画命令フック手順においてフックされた前記描画命令をオーバーレイ表示に対する描画命令に変換する描画命令変換手順と、
    前記描画命令変換手順において変換された前記オーバーレイ表示に対する描画命令に基づいて、前記画面情報を前記表示装置にオーバーレイ表示させるオーバーレイ表示手順とを有することを特徴とする請求項18記載の画面共有方法。
  24. 前記画面共有サーバ手順は、画面共有を行っている前記他のコンピュータにおける入力イベントの位置情報を含むイベント情報を受信するイベント情報受信手順と、
    前記イベント情報に基づいて前記入力イベントに対応するイベントを発生させるイベント発生手順とを有し、
    有し、
    前記イベント情報受信手順において受信された前記イベント情報に含まれている前記位置情報に基づいて、前記入力イベントが前記非共有画面に影響すると判定された場合は、前記イベント発生手順は前記入力イベントに対応するイベントを発生させないことを特徴とする請求項16乃至23いずれか一項記載の画面共有方法。
  25. 前記共有表示の許否を判定するための文字列を管理する文字列管理手順を有し、
    前記非共有表示制御手順は、表示されるウィンドウに関する文字列と前記文字列管理手順において管理されている文字列との比較に基づいて、前記ウィンドウに係る前記画面情報を前記第一のメモリ領域に記録するか否かを判断することを特徴とする請求項16乃至24いずれか一項記載の画面共有方法。
  26. 前記非共有表示制御手順は、表示されるウィンドウに係るアプリケーションの識別名と前記文字列管理手順において管理されている文字列との比較に基づいて、前記ウィンドウに係る前記画面情報を前記第一のメモリ領域に記録するか否かを判断することを特徴とする請求項25記載の画面共有方法。
  27. 前記非共有表示制御手順は、表示されるウィンドウの名前と前記文字列管理手順において管理されている文字列との比較に基づいて、前記ウィンドウに係る前記画面情報を前記第一のメモリ領域に記録するか否かを判断することを特徴とする請求項25又は26記載の画面共有方法。
  28. 前記非共有表示制御手順は、ウィンドウの表示に際し当該ウィンドウの前記共有表示の許否をユーザに入力させることを特徴とする請求項16乃至27いずれか一項記載の画面共有方法。
  29. ネットワークを介して接続する他のコンピュータより画面情報を受信し、受信された画面情報に基づいて前記表示装置への表示を行なう画面共有クライアント手順を有し、
    前記非共有表示制御手順は、前記画面共有クライアント手順において受信された前記画面情報については前記第一のメモリ領域への記録は行わないで前記表示装置に表示させることを特徴とする請求項16乃至28いずれか一項記載の画面共有方法。
  30. 前記非共有表示制御手順は、前記非共有画面の視覚的な属性を共有表示される画面と異なるものとすることを特徴とする請求項16乃至29いずれか一項記載の画面共有方法。
  31. コンピュータに、
    表示装置に表示させる画面情報が記録された第一のメモリ領域より該画面情報を取得し、取得された画面情報をネットワークを介して接続する他のコンピュータに送信することにより前記他のコンピュータに前記画面情報を共有表示させる画面共有サーバ手順と、
    前記他のコンピュータに共有表示させない非共有画面の画面情報について前記第一のメモリ領域への記録は行わないで前記表示装置に表示させる非共有表示制御手順とを実行させるための画面共有プログラム。
  32. 請求項31記載の画面共有プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2005164416A 2005-06-03 2005-06-03 画面共有装置、画面共有方法、画面共有プログラム及び記録媒体 Expired - Fee Related JP4751647B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005164416A JP4751647B2 (ja) 2005-06-03 2005-06-03 画面共有装置、画面共有方法、画面共有プログラム及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005164416A JP4751647B2 (ja) 2005-06-03 2005-06-03 画面共有装置、画面共有方法、画面共有プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2006338531A true JP2006338531A (ja) 2006-12-14
JP4751647B2 JP4751647B2 (ja) 2011-08-17

Family

ID=37559009

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005164416A Expired - Fee Related JP4751647B2 (ja) 2005-06-03 2005-06-03 画面共有装置、画面共有方法、画面共有プログラム及び記録媒体

Country Status (1)

Country Link
JP (1) JP4751647B2 (ja)

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009054100A (ja) * 2007-08-29 2009-03-12 Toshiba Corp 情報処理装置、および情報処理装置の制御方法
JP2010055153A (ja) * 2008-08-26 2010-03-11 Fujitsu Ltd 秘密情報の非表示化方法
JP2010529567A (ja) * 2007-06-08 2010-08-26 マイクロソフト コーポレーション ネットワークを通じてコンピュータディスプレイを共有する方法
JP2010186369A (ja) * 2009-02-13 2010-08-26 Nec Personal Products Co Ltd 画像転送装置、方法及びプログラム
JP2011525279A (ja) * 2008-06-21 2011-09-15 マイクロソフト コーポレーション グラフィカルユーザーインターフェース描画処理のための情報処理された二重バッファリング
JP2011209913A (ja) * 2010-03-29 2011-10-20 Nec Personal Products Co Ltd 通信システム、サーバおよび通信方法
KR20110131439A (ko) * 2010-05-31 2011-12-07 엘지전자 주식회사 이동 단말기 및 그 제어방법
JP2011248761A (ja) * 2010-05-28 2011-12-08 Optim Corp 遠隔画面共有を実行する方法、ユーザ端末、プログラム及びシステム
WO2012107975A1 (ja) * 2011-02-09 2012-08-16 パナソニック株式会社 仮想計算機表示装置、仮想計算機表示方法、仮想計算機表示プログラム、記録媒体、及び集積回路
JP2012203889A (ja) * 2011-03-28 2012-10-22 Fujitsu Ltd 画面共有方法、画面共有装置、及びプログラム
JP2012234416A (ja) * 2011-05-02 2012-11-29 Canon Inc 情報処理装置、情報処理方法及びプログラム
JP2012252385A (ja) * 2011-05-31 2012-12-20 Toshiba Corp サーバ装置、クライアント装置および画像転送システム
JP2013205835A (ja) * 2012-03-29 2013-10-07 Toshiba Corp 画面表示装置及び画面表示システム
JP2013205849A (ja) * 2012-03-27 2013-10-07 Nec System Technologies Ltd 画面表示システム、情報処理装置、画面表示方法、及びプログラム
JP2015505189A (ja) * 2011-12-12 2015-02-16 クゥアルコム・インコーポレイテッドQualcomm Incorporated メディア出力の選択的ミラーリング
JP2015518675A (ja) * 2012-03-27 2015-07-02 グーグル インコーポレイテッド ビデオ通信の間のアプリケーションへのユーザアクセスを提供すること
US9086788B2 (en) 2011-12-12 2015-07-21 International Business Machines Corporation Context-sensitive collaboration channels
US9124657B2 (en) 2011-12-14 2015-09-01 International Business Machines Corporation Dynamic screen sharing for optimal performance
US9134889B2 (en) 2011-12-14 2015-09-15 International Business Machines Corporation Variable refresh rates for portions of shared screens
JP2015179890A (ja) * 2014-03-18 2015-10-08 キヤノン株式会社 画像形成装置、遠隔保守システム、情報処理方法及びプログラム
US9277230B2 (en) 2011-11-23 2016-03-01 Qualcomm Incorporated Display mode-based video encoding in wireless display devices
JP2016033837A (ja) * 2015-12-10 2016-03-10 キヤノンマーケティングジャパン株式会社 ウェブ会議システム、情報処理装置、ウェブ会議サーバ、その制御方法およびプログラム
JP2016110486A (ja) * 2014-12-09 2016-06-20 キヤノンItソリューションズ株式会社 ウェブ会議システム、ウェブ会議サーバ、ウェブ会議システムの制御方法、およびプログラム
JP2016532952A (ja) * 2013-08-02 2016-10-20 華為技術有限公司Huawei Technologies Co.,Ltd. 画像表示方法および装置
WO2017010253A1 (ja) * 2015-07-13 2017-01-19 株式会社ディー・エヌ・エー 端末装置の出力画面を配信するシステム、方法、及びプログラム
US9582808B2 (en) 2011-12-12 2017-02-28 International Business Machines Corporation Customizing a presentation based on preferences of an audience
US9588652B2 (en) 2011-12-12 2017-03-07 International Business Machines Corporation Providing feedback for screen sharing
JP2017134736A (ja) * 2016-01-29 2017-08-03 Sky株式会社 遠隔操作システム及び遠隔操作プログラム
JP2017199314A (ja) * 2016-04-28 2017-11-02 キヤノンマーケティングジャパン株式会社 情報処理システム、情報処理装置、クライアント端末、その制御方法及びプログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099233A (ja) * 1998-09-24 2000-04-07 Fujitsu Ltd 共有画面制御装置
JP2004164267A (ja) * 2002-11-13 2004-06-10 Canon Inc リモート操作時のウインドウアクセス制御装置、ウインドウアクセス制御方法、および、ウインドウアクセス制御のためのプログラムを記憶した記憶媒体
JP2004259158A (ja) * 2003-02-27 2004-09-16 Sony Corp データ会議システム,送信側端末装置,受信側端末装置,プログラム,データ会議方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000099233A (ja) * 1998-09-24 2000-04-07 Fujitsu Ltd 共有画面制御装置
JP2004164267A (ja) * 2002-11-13 2004-06-10 Canon Inc リモート操作時のウインドウアクセス制御装置、ウインドウアクセス制御方法、および、ウインドウアクセス制御のためのプログラムを記憶した記憶媒体
JP2004259158A (ja) * 2003-02-27 2004-09-16 Sony Corp データ会議システム,送信側端末装置,受信側端末装置,プログラム,データ会議方法

Cited By (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010529567A (ja) * 2007-06-08 2010-08-26 マイクロソフト コーポレーション ネットワークを通じてコンピュータディスプレイを共有する方法
JP2009054100A (ja) * 2007-08-29 2009-03-12 Toshiba Corp 情報処理装置、および情報処理装置の制御方法
JP2011525279A (ja) * 2008-06-21 2011-09-15 マイクロソフト コーポレーション グラフィカルユーザーインターフェース描画処理のための情報処理された二重バッファリング
JP2010055153A (ja) * 2008-08-26 2010-03-11 Fujitsu Ltd 秘密情報の非表示化方法
JP2010186369A (ja) * 2009-02-13 2010-08-26 Nec Personal Products Co Ltd 画像転送装置、方法及びプログラム
JP2011209913A (ja) * 2010-03-29 2011-10-20 Nec Personal Products Co Ltd 通信システム、サーバおよび通信方法
JP2011248761A (ja) * 2010-05-28 2011-12-08 Optim Corp 遠隔画面共有を実行する方法、ユーザ端末、プログラム及びシステム
KR101660742B1 (ko) * 2010-05-31 2016-09-28 엘지전자 주식회사 이동 단말기 및 그 제어방법
KR20110131439A (ko) * 2010-05-31 2011-12-07 엘지전자 주식회사 이동 단말기 및 그 제어방법
WO2012107975A1 (ja) * 2011-02-09 2012-08-16 パナソニック株式会社 仮想計算機表示装置、仮想計算機表示方法、仮想計算機表示プログラム、記録媒体、及び集積回路
JPWO2012107975A1 (ja) * 2011-02-09 2014-07-03 パナソニック株式会社 仮想計算機表示装置、仮想計算機表示方法、仮想計算機表示プログラム、記録媒体、及び集積回路
JP5774032B2 (ja) * 2011-02-09 2015-09-02 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 仮想計算機表示装置、仮想計算機表示方法、仮想計算機表示プログラム、記録媒体、及び集積回路
US8984509B2 (en) 2011-02-09 2015-03-17 Panasonic Intellectual Property Corporation Of America Virtual machine display device, virtual machine display method, recording medium, and integrated circuit
JP2012203889A (ja) * 2011-03-28 2012-10-22 Fujitsu Ltd 画面共有方法、画面共有装置、及びプログラム
JP2012234416A (ja) * 2011-05-02 2012-11-29 Canon Inc 情報処理装置、情報処理方法及びプログラム
JP2012252385A (ja) * 2011-05-31 2012-12-20 Toshiba Corp サーバ装置、クライアント装置および画像転送システム
US9277230B2 (en) 2011-11-23 2016-03-01 Qualcomm Incorporated Display mode-based video encoding in wireless display devices
US9086788B2 (en) 2011-12-12 2015-07-21 International Business Machines Corporation Context-sensitive collaboration channels
US9582808B2 (en) 2011-12-12 2017-02-28 International Business Machines Corporation Customizing a presentation based on preferences of an audience
US9852432B2 (en) 2011-12-12 2017-12-26 International Business Machines Corporation Customizing a presentation based on preferences of an audience
JP2015505189A (ja) * 2011-12-12 2015-02-16 クゥアルコム・インコーポレイテッドQualcomm Incorporated メディア出力の選択的ミラーリング
US9600152B2 (en) 2011-12-12 2017-03-21 International Business Machines Corporation Providing feedback for screen sharing
US9588652B2 (en) 2011-12-12 2017-03-07 International Business Machines Corporation Providing feedback for screen sharing
US9141264B2 (en) 2011-12-14 2015-09-22 International Business Machines Corporation Variable refresh rates for portions of shared screens
US9131021B2 (en) 2011-12-14 2015-09-08 International Business Machines Corporation Dynamic screen sharing for optimal performance
US9124657B2 (en) 2011-12-14 2015-09-01 International Business Machines Corporation Dynamic screen sharing for optimal performance
US9134889B2 (en) 2011-12-14 2015-09-15 International Business Machines Corporation Variable refresh rates for portions of shared screens
JP2013205849A (ja) * 2012-03-27 2013-10-07 Nec System Technologies Ltd 画面表示システム、情報処理装置、画面表示方法、及びプログラム
JP2015518675A (ja) * 2012-03-27 2015-07-02 グーグル インコーポレイテッド ビデオ通信の間のアプリケーションへのユーザアクセスを提供すること
JP2013205835A (ja) * 2012-03-29 2013-10-07 Toshiba Corp 画面表示装置及び画面表示システム
US10320886B2 (en) 2013-08-02 2019-06-11 Huawei Technologies Co., Ltd. Image display method and apparatus
JP2016532952A (ja) * 2013-08-02 2016-10-20 華為技術有限公司Huawei Technologies Co.,Ltd. 画像表示方法および装置
JP2015179890A (ja) * 2014-03-18 2015-10-08 キヤノン株式会社 画像形成装置、遠隔保守システム、情報処理方法及びプログラム
JP2016110486A (ja) * 2014-12-09 2016-06-20 キヤノンItソリューションズ株式会社 ウェブ会議システム、ウェブ会議サーバ、ウェブ会議システムの制御方法、およびプログラム
WO2017010253A1 (ja) * 2015-07-13 2017-01-19 株式会社ディー・エヌ・エー 端末装置の出力画面を配信するシステム、方法、及びプログラム
JP2016033837A (ja) * 2015-12-10 2016-03-10 キヤノンマーケティングジャパン株式会社 ウェブ会議システム、情報処理装置、ウェブ会議サーバ、その制御方法およびプログラム
JP2017134736A (ja) * 2016-01-29 2017-08-03 Sky株式会社 遠隔操作システム及び遠隔操作プログラム
JP2017199314A (ja) * 2016-04-28 2017-11-02 キヤノンマーケティングジャパン株式会社 情報処理システム、情報処理装置、クライアント端末、その制御方法及びプログラム

Also Published As

Publication number Publication date
JP4751647B2 (ja) 2011-08-17

Similar Documents

Publication Publication Date Title
JP4751647B2 (ja) 画面共有装置、画面共有方法、画面共有プログラム及び記録媒体
JP3546705B2 (ja) アプリケーション・ウインドウにアノテーション・データを対応付ける方法及び装置、システム、アプリケーション・ウインドウへのアノテーション・データの対応付けを制御するプログラムを格納した記憶媒体
US7657837B2 (en) Seamless windows functionality to remote desktop sessions regarding z-order
CA2560360C (en) Systems and methods for transferring data between computing devices
US7861171B2 (en) Pointright based point-of-presence system and architecture
US20060103508A1 (en) Remote-control system, remote-control apparatus, apparatus to be controlled, remote-control method, computer program, and storage medium
EP0834801A2 (en) Remote control of a display system
US8924502B2 (en) System, method and computer program product for updating a user session in a mach-derived system environment
US7730417B2 (en) Terminal apparatus, network system, window display method, and computer program
US20100058481A1 (en) Non-displaying method of secret information and information processing device
JP2006031359A (ja) 画面共有方法、及び会議支援システム
EP0766847A1 (en) Apparatus and method for application sharing in a graphic user interface
US9250852B2 (en) Screen output system that prevents the display of selected information
JP2011118662A (ja) シンクライアント型の情報処理システム
US8434009B2 (en) Information processing apparatus and computer readable medium
EP3306458A1 (en) Information processing device, image display method, and program
JP2015056030A (ja) 画像処理装置および画像処理システム
GB2502082A (en) A method for providing content to an additional display
US10489049B2 (en) Image processing apparatus, image processing system, and image processing method
JP5345998B2 (ja) コンピュータ・システムの制御方法およびコンピュータ
JP2010182074A (ja) ファイル共有システム、ファイル共有方法及びそのプログラム
JPH09198227A (ja) 情報処理システム及びその方法及び装置
JP2009223658A (ja) 操作表示システムと操作表示システムのためのプログラム
JP7298224B2 (ja) 表示装置、及び表示方法
JP6102356B2 (ja) 画像共有システム、画像処理装置およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080520

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100830

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100907

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110426

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110523

R150 Certificate of patent or registration of utility model

Ref document number: 4751647

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140527

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees