(57)【要約】  表示をリモート操作すること。例えば、１つまたは複数のアプリケーションを実行するローカルコンピュータシステムおよびローカルコンピュータシステムの１つまたは複数のアプリケーションに関してユーザに画像情報を表示する遠隔コンピュータを含むネットワーク化されたコンピューティング環境において実行される方法。遠隔コンピュータは複数のサーフェスを含む。描画コマンドを含む描画情報が遠隔コンピュータに送信される。メタ情報が遠隔コンピュータに送信され、複数のサーフェスのうちどのサーフェスに描画情報が適用されるかに関する情報を定義する。構成情報が遠隔コンピュータに送信され、サーフェスの表示特徴を定義する。
2009508249.tif 000002
【特許請求の範囲】
【請求項１】
１つまたは複数のアプリケーション（１３６）を実行するローカルコンピュータシステム（１０２）および前記ローカルコンピュータシステム（１０２）の前記１つまたは複数のアプリケーション（１３６）に関してユーザに画像情報を表示する遠隔コンピュータシステム（１０４）を含むネットワーク化されたコンピューティング環境（１００）において、前記遠隔コンピュータシステムが複数のサーフェス（１１６、１１８、１２０）を含む、表示情報を送信する方法であって、
描画コマンドを含む描画情報を前記遠隔コンピュータに送信する（２０２）ステップと、
前記複数のサーフェスのうちどのサーフェスに前記描画情報が適用されるかに関する情報を定義するメタ情報を前記遠隔コンピュータに送信する（２０４）ステップと、
前記サーフェスの表示特徴を定義する構成情報を前記遠隔コンピュータに送信する（２０６）ステップと
を備えることを特徴とする方法。
【請求項２】
前記構成情報はサーフェスフィーチャを定義する情報を含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記サーフェスフィーチャはフレームの色、フレームのテクスチャ、要素の陰影付け、ウィンドウの回転、最大化および／またはウィンドウの最小化のうちの少なくとも１つを含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記構成情報はサーフェスの相互関係を定義する構成木情報を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記遠隔コンピュータにコマンドを送信して複合デスクトップを作動させるステップをさらに備えることを特徴とする請求項１に記載の方法。
【請求項６】
前記遠隔コンピュータにコマンドを送信して保存モードを作動させるステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記メタ情報はサーフェスの大きさ、サーフェスの色の深さ、サーフェスの生成、サーフェスの破壊および／またはサーフェスのサイズ変更のうちの少なくとも１つに向けられた情報を含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記遠隔コンピュータからユーザ入力を受信するステップをさらに含み、構成情報を送信するステップは前記ユーザ入力に関する情報を送信するステップを含むことを特徴とする請求項１に記載の方法。
【請求項９】
他の描画コマンドの対象を識別するメタ情報に関わる前記他の描画コマンドから対象が推測可能な場合、対象を識別する追加描画コマンドに対する付随のメタ情報を送信することなく前記追加描画コマンドを送信するステップをさらに含むことを特徴とする請求項１に記載の方法。
【請求項１０】
描画情報を送信するステップ、メタ情報を送信するステップおよび構成情報を送信するステップは、前記ローカルコンピュータの表示ドライバに送信するステップを含むことを特徴とする請求項１に記載の方法。
【請求項１１】
前記メタ情報を生成するために階層化プロセスを実行するステップをさらに含み、前記階層化プロセスは最上位ウィンドウの層をデタッチし、最上位ウィンドウに塗り替えを命じるステップを含むことを特徴とする請求項１に記載の方法。
【請求項１２】
前記ローカルコンピュータはＴＳサーバであることを特徴とする請求項１に記載の方法。
【請求項１３】
１つまたは複数のアプリケーション（１３６）を実行するローカルコンピュータシステム（１０２）および前記ローカルコンピュータシステム（１０２）の前記１つまたは複数のアプリケーション（１３６）に関してユーザに画像情報を表示する遠隔コンピュータシステム（１０４）を含むネットワーク化されたコンピューティング環境（１００）において、前記遠隔コンピュータシステム（１０４）が複数のサーフェス（１１６、１１８、１２０）を含む、前記遠隔コンピュータシステム（１０４）に情報を表示する方法であって、
前記ローカルコンピュータから描画コマンドを含む描画情報を受信する（３０２）ステップと、
前記複数のサーフェスのうちどのサーフェスに前記描画情報が適用されるかに関する情報を定義するメタ情報を前記ローカルコンピュータから受信する（３０４）ステップと、
前記サーフェスの表示特徴を定義する構成情報を前記ローカルコンピュータから受信する（３０６）ステップと
を含むことを特徴とする方法。
【請求項１４】
サーフェスマネージャを参照してユーザインタフェースのレイアウトを決定し、前記サーフェスマネージャで定義される前記ユーザインタフェースのレイアウトに関して構成マネージャの前記構成情報を適用するステップをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
前記メタ情報で特定されるサーフェスに前記描画コマンドを適用するステップをさらに含むことを特徴とする請求項１３に記載の方法。
【請求項１６】
他の描画コマンドの対象を識別するメタ情報に関わる前記他の描画コマンドから対象が推測可能な場合、前記対象を識別する追加描画コマンドに関する付随のメタ情報を受信することなく前記追加描画コマンドを受信し、前記他の描画コマンドの対象を識別する前記メタ情報が識別するサーフェスに前記追加描画コマンドを適用するステップをさらに含むことを特徴とする請求項１５に記載の方法。
【請求項１７】
ユーザ入力を前記ローカルコンピュータに送信し前記ローカルコンピュータから追加の構成情報を受信するステップをさらに含み、前記追加の構成情報が前記ユーザ入力に関わることを特徴とする請求項１３に記載の方法。
【請求項１８】
前記遠隔コンピュータがＴＳクライアントであることを特徴とする請求項１３に記載の方法。
【請求項１９】
１つまたは複数のアプリケーション（１３６）を実行するローカルコンピュータシステム（１０２）を含むネットワーク化されたコンピューティング環境（１００）における、前記ローカルコンピュータシステム（１０２）の前記１つまたは複数のアプリケーション（１３６）に関してユーザに画像情報を表示する遠隔コンピュータシステム（１０４）であって、
前記遠隔コンピュータシステム（１０４）のユーザインタフェース（１１０）に画像構成要素をレンダリングするように構成されているクライアント（１２８）と、
前記遠隔コンピュータシステム（１０４）の前記ユーザインタフェース（１１０）に表示される画像に関する情報を備えるサーフェスマネージャ（１２６）と、
前記サーフェスマネージャ（１２６）に結合された構成エンジン（１３０）とを備え、
前記構成エンジン（１３０）はローカルコンピュータシステム（１０２）の構成エンジン（１３４）に対応し、前記遠隔コンピュータシステム（１０４）の前記構成エンジン（１３０）は、前記ローカルコンピュータシステム（１０２）から構成情報（１２２）を受信し、前記ローカルコンピュータシステム（１０２）から受信した前記構成情報（１２２）および前記クライアント（１２８）に画像描画命令を提供する前記サーフェスマネージャ（１２６）の情報に基づき構成木を修正するように構成されていることを特徴とする遠隔コンピュータシステム（１０４）。
【請求項２０】
前記遠隔コンピュータシステムでユーザ入力を受信し、前記ローカルコンピュータシステムに前記ユーザ入力を送信するように構成された入力マネージャをさらに備え、構成情報に関わるユーザ入力を使用して前記ローカルコンピュータシステムから前記遠隔コンピュータシステムに送信される構成情報を修正できることを特徴とする請求項１９に記載の遠隔コンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１つまたは複数のアプリケーションを実行するローカルコンピュータシステムおよびローカルコンピュータシステムの１つまたは複数のアプリケーションに関してユーザに画像情報を表示する遠隔コンピュータを含むコンピュータシステムに関する。
【背景技術】
【０００２】
コンピュータとコンピューティングシステムは現代の生活のほぼ全ての側面に影響を与えている。コンピュータは一般に、仕事、レクリエーション、医療、交通、エンターテイメント、家庭管理などと関わりがある。また、コンピュータの機能性は、様々なネットワーク接続を通じて相互接続できることから向上している。コンピュータネットワークは、ネットワーク上での資源とサービスの利用を可能にする。こうした資源とサービスには、例えば、クライアントがアクセスできるデータを格納するファイルサーバ、クライアントによるプリンタ利用を可能にするプリントサーバ、他の顧客が利用できるデータとネットワーク上の資源を格納するためのクライアントコンピュータ上の共用記憶装置などがあるが、これらには限定されない。
【０００３】
ネットワーク化されたコンピュータが提供する機能の１つの例は、サーバコンピュータから端末サービスを提供する能力と関わる。この種のサービスはアプリケーションサーバとも言われることもある。端末サービス（ＴＳ）サーバは、１つまたは複数のＴＳクライアントにコンピューティング機能を提供する。この例では、アプリケーションを実行し、ＴＳクライアントが要求するその他のコンピューティング機能を実行するためのコンピューティング能力を提供できるＴＳサーバにＴＳクライアントが接続することになる。このようなやり方で、ＴＳサーバの処理能力が活用される結果、いくつかのＴＳクライアントがＴＳサーバの処理能力を利用できる。強力なＴＳサーバは、同時に１００のクライアントにコンピューティング機能を提供することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ＴＳサーバのアプリケーションは、ＴＳクライアントのディスプレイでユーザに表示できる表示情報をＴＳクライアントに送信する。通常これは、デスクトップ向けの描画コマンドの単一の流れ全体をＴＳサーバのアプリケーションからＴＳクライアントに送信することによって実行されている。ＴＳクライアントのディスプレイに画像をレンダリングするためにＴＳサーバからＴＳクライアントに送信される情報は、タイル表示ウィンドウ（ｔｉｌｅｄ  ｗｉｎｄｏｗｓ）が画像情報の喪失を招くイミーディエイト提示モード（ｉｍｍｅｄｉａｔｅ  ｐｒｅｓｅｎｔａｔｉｏｎ  ｍｏｄｅ）で通常使われる。例えば、イミーディエイト提示モードを使用すると、ウィンドウの可視部分を描くのに必要な情報のみが入手できる。言い換えれば、他のウィンドウで覆われている背景にウィンドウ部分の画像情報はない。画像情報は最上位ウィンドウにのみ保持されている。アプリケーションが画像を描くための情報を送信した場合、その情報はスクリーンの特定の部分のために送信される。他のウィンドウが既にスクリーンのその部分を占めている場合、既にスクリーンのその部分を占めているウィンドウ部分は、アプリケーションが描画コマンドを送信した場合に上書き描画されることになる。ウィンドウを前景に移す場合、ウィンドウを前景に出すための新たな情報が必要になる。これにより、複数のウィンドウが互いに間隔をあけて表示される場合、またはウィンドウのシャッフル、回転、再配列を行う場合、様々な困難が生じる。また、これにより、動画に関わるときに様々な問題が生じる。
【０００５】
本明細書における特許請求の主題は、不都合を解決する実施形態、または上述のような環境でのみ行われる実施形態に限定されない。むしろ、この背景は、本明細書で説明するいくつかの実施形態が実行される１つの典型的な技術領域を示したに過ぎない。
【課題を解決するための手段】
【０００６】
本明細書で説明する１つの実施形態は、例えば、１つまたは複数のアプリケーションを実行するローカルコンピュータシステムおよびローカルコンピュータシステムの１つまたは複数のアプリケーションに関してユーザに画像情報を表示する遠隔コンピュータシステムを含むネットワーク化されたコンピューティング環境において実行可能な方法を含む。遠隔コンピュータシステムは複数のサーフェスを含む。この方法は、描画コマンドを含む描画情報を遠隔コンピュータに送信することを含む。この方法はさらに、複数のサーフェスのうちどのサーフェスに描画情報が適用されるかに関する情報を定義するメタ情報を遠隔コンピュータに送信することをさらに含む。サーフェスの表示特徴を定める構成情報は遠隔コンピュータに送信される。
【０００７】
クライアントの観点から類似の環境で実行されるもう１つの実施形態は、ローカルコンピュータから描画コマンドを含む描画情報を受信することを含む方法を含む。この方法はさらに、ローカルコンピュータから複数のサーフェスのうちどのサーフェスに描画情報が適用されるかに関する情報を定義するメタ情報を受信することを含む。サーフェスの表示特徴を定義する構成情報は、ローカルコンピュータから受信される。
【０００８】
本明細書で説明するもう１つの実施形態は、遠隔コンピュータシステムを対象とする。このコンピュータシステムは、例えば、１つまたは複数のアプリケーションを実行するローカルコンピュータシステムを含み、遠隔コンピュータがローカルコンピュータシステムの１つまたは複数のアプリケーションに関してユーザに画像情報を表示するネットワーク化されたコンピューティング環境において実行できる。遠隔コンピュータシステムはクライアントを含む。クライアントは遠隔コンピュータシステムでユーザインタフェースに画像構成要素をレンダリングするように構成される。遠隔コンピュータシステムはさらに、サーフェスマネージャを含む。このサーフェスマネージャは、遠隔コンピュータシステムでユーザインタフェースに表示される画像に関する情報を含む。このコンピュータシステムはさらに、サーフェスマネージャに結合された構成エンジンを含む。この構成エンジンは、ローカルコンピュータシステムの構成エンジンに対応する。構成エンジンは、ローカルコンピュータから構成情報を受信し、ローカルコンピュータから受信した構成情報およびクライアントに画像描画命令を提供するサーフェスマネージャの情報に基づき構成木を変更するように構成される。
【０００９】
この要約は、以下の発明を実施するための最良の形態でさらに説明される、単純化された形態での概念を選んで紹介している。この要約は、特許請求の主題の主要な特徴または本質的特徴を特定することを意図しておらず、特許請求の主題の範囲を決定する一助として使用されることも意図していない。
【００１０】
さらなる特徴と利点は、以下の説明で述べられ、一部はその説明から明白であるか、本明細書における教示の実践によって習得可能である。本発明の特徴と利点は、添付の特許請求の範囲で特に指摘する手段と組合せによって理解され獲得されよう。本発明の特徴は、以下の説明と添付の特許請求の範囲からより明らかになるか、以下に説明する発明を実施することで習得されよう。
【００１１】
上述の利点および特徴ならびに他の利点と特徴が得られるように説明するために、簡単に前述した主題に関するより具体的な説明を、添付の図面で示される具体的な実施形態を参照して行う。これらの図面が代表的な実施形態を示したに過ぎず、そのため範囲を限定するものと見なされないことを理解し、添付図面を使用してさらに具体的および詳細に実施形態を説明する。
【発明を実施するための最良の形態】
【００１２】
本明細書の実施形態は、以下でより詳細に説明するとおり、各種コンピュータハードウェアを含む専用コンピュータまたは汎用コンピュータを含むことができる。
【００１３】
準備的事項として、本明細書の実施例と説明が、１つの実施における利便性を目的として、マイクロソフトウィンドウズ（登録商標）の専門用語を頻繁に参照することが認識され理解されよう。ただし、こうした特定の用語の参照を特定のオペレーティングシステムの制限的な実施と解釈すべきではない。むしろ、本明細書で説明する基本的な機能性は、本明細書で説明する機能性が望まれるあらゆるコンピューティング環境またはオペレーティングシステムで実行することができる。
【００１４】
コンピュータのデスクトップで見られるシーンは、ウィンドウと呼ばれる最上位のＵＩ抽象（ＵＩ  ａｂｓｔｒａｃｔｉｏｎ）と、カーソル、ドラッグ矩形、フレームおよび境界といったその他のＵＩ効果（ＵＩ  ｅｆｆｅｃｔ）（スプライト）とを重ねることによって構成されている。
【００１５】
デスクトップの構成が有効になった場合、最後の（または構成された）シーンは必ずしもウィンドウとスプライトを重ねることに制限されない。むしろ、これらの個々のエンティティは動画、三次元効果、陰影付け、１画素当たりの色変換、透過に関してブロックを作成する。ウィンドウとスプライトの基本的描画コマンド（ｐｒｉｍｉｔｉｖｅ  ｄｒａｗｉｎｇ  ｃｏｍｍａｎｄ）をそれらの構成から分けて最終シーンを形成するために、構造的リダイレクションが導入されている。構造的リダイレクションは、少なくとも部分的に、最上位のエンティティすべてのための補助サーフェスを作成すること、デスクトップ全体を対象とする代わりに補助サーフェスに描画コマンドをリダイレクトすることから成る。構成エンジンと呼ばれる新たなエンティティは最終的に、全ての効果と変換を適用した後の可視シーンの最終表示を構成することを担う。
【００１６】
本明細書で説明する１つの実施形態は、デスクトップが保存モードの複合デスクトップ（ｃｏｍｐｏｓｉｔｅ  ｄｅｓｋｔｏｐ）を使用してリモート表示されることを可能にする。保存モードの複合デスクトップは、遠隔クライアントで表示される各ウィンドウの画像情報が保存され、それによりウィンドウ間の様々な関係が変化し、画像情報を失うことなく各種動画が得られることを意味する。リモート表示される複合デスクトップは、複数の様々なデータストリームを用いてコマンドを分割し、ユーザインタフェース（ＵＩ）の構成要素間の適切なインタラクションを可能にする。例えば、１つの実施形態の複合デスクトップは表示をレンダリングするために３つのデータセットを用いる。１つのデータセットは描画コマンドを含む。２つ目のデータセットはメタ情報または描画コマンドが意図する特定のサーフェスを定義する構造的なリダイレクション情報を含む。３つ目のデータセットは、ウィンドウおよびスプライトが個々にまた他のウィンドウおよびスプライトとの関係でどのように表示されるべきかを定義する構成情報または関係情報を含む。
【００１７】
画像描画コマンドは、特定のサーフェスと当該サーフェスを占めるウィンドウの各アプリケーションを対象としている。よって、情報の１つの流れは、アプリケーションによって生成されるグラフィカルデバイスインタフェース（ＧＤＩ）描画コマンドのような描画コマンドを含む。描画コマンドは、ＴＳサーバの表示ドライバに送信される。表示ドライバとして知られる符号化されたＧＤＩコマンドがＴＳクライアントに送信される。１つの実施形態で、ＧＤＩコマンドは、メタ情報の流れによってＴＳサーバとＴＳクライアントの個々の描画サーフェスを対象とすることができる。例えば、サーフェスはＴＳサーバにおける現在の分散コンピューティング環境（ＤＣＥ）ビジュアルと関係するサーフェスであることがある。
【００１８】
メタ情報は描画コマンドがどのサーフェスに対して意図されているかなどの情報を含む。データのメタ情報の流れはＴＳクライアント側のサーフェスとスプライトを正しく生成するために使用される構造的リダイレクション情報である。１つの例示的な実施形態において、この情報の階層は、ＤＣＥビジュアル（デスクトップ構成エンジンビジュアルエンティティ）またはＤＷＭビジュアル（デスクトップウィンドウマネージャビジュアルエンティティ）から始まる。各ＤＣＥビジュアルは描画サーフェスをアタッチしてよい。このサーフェスは、閉鎖またはプログラム上の理由で各ＤＣＥビジュアルが隠れているか見えない場合にはアタッチされない。各ＤＣＥビジュアルにはその有効期間中に様々な描画サーフェスをアタッチしてもよい（例えば、これはウィンドウのサイズを変更した場合に発生する）。
【００１９】
描画サーフェスは論理的に基本的ＧＤＩ描画コマンドの対象であり、表示ドライバインタフェース（ＤＤＩ）のパラメータとして見られる伝統的なＳＵＲＦＯＢＪ抽象に相当する。１つの例では、ＤＤＩはＧＤＩから表示ドライバに呼び出す。ＤＣＥビジュアルの生成／破壊とＳＵＲＦＯＢＪのアタッチ／デタッチは、表示ドライバモデルに加えられた汎用の通知エントリポイントから特別な通知コードを使って追跡される。表示ドライバがＤＣＥビジュアルと関連するＳＵＲＦＯＢＪの有効期間について認識すると、表示ドライバは拡張リモートデスクトッププロトコル（ＲＤＰ）でこの情報を符号化することができ、これによりＴＳクライアントは同じエンティティを再生成できる。構成エンジンがリダイレクションサーフェスとスプライトにアクセスするインタフェースは、１つの実施形態でクライアントとサーバで同じであり、その理由は、（以前にＧＤＩ基本的コマンドで描かれた）サーフェスを検索するコンセプトが、サーフェス管理インタフェースで抽出されることである。メタデータはさらに、サーフェスのサイズ、サーフェスの存在、新たなサーフェスの生成、サーフェスの破壊、およびサーフェスの色の深さ（すなわち、８ビットカラー、１６ビットカラー、３２ビットカラーなど）といった他のサーフェス情報を含んでよい。
【００２０】
構成マネージャは、構成情報を用いてスクリーン上の画像を配列し、それによりユーザは構成マネージャが提示する情報を見、表示のためにアプリケーションが何かを有することは必須ではない。したがって、１つの例示的な実施は、ＭＩＬリモート操作インフラストラクチャ（ＭＩＬはメディアインフラストラクチャ層であり、ユーザインタフェースおよびアプリケーションの構築に使われる１組のインタフェースおよび構成要素）に依拠するアプリケーションを使って（効果、変換および構造的リダイレクション情報を記述する）ＭＩＬコマンドを受信することができる。ＭＩＬコマンドは、汎用トランスポート上で移送されるために通常は設計されており、１つの実施形態では、変更されずに構成エンジンに供給される。構成エンジンは、描画サーフェスとスプライトを対象とするＧＤＩ型描画コマンドを効果的にリモート操作する備えを通常有しているわけではない。そのためこれは、ＴＳクライアントにおけるクライアントが供給するような外部のエンティティを使ってこうしたエンティティの補助サーフェスを供給する。
【００２１】
ＭＩＬコマンドはＲＤＰ表示ドライバを通じて送信されるデータの流れの１つであり、変更されずにＴＳクライアントの構成エンジンへの汎用エントリポイントに渡される。
【００２２】
ＭＩＬコマンドは、ウィンドウの境界、ウィンドウの背景、ウィンドウの遠近、ウィンドウがディスプレイに現れる順番、ボタンの形とウィンドウの大きさ、動画情報、カーソル位置、陰影付け、光の加減などを定義する情報を含んでよい。
【００２３】
上記の説明では、マイクロソフトウィンドウズ（登録商標）の特定の例に向けられた特定のアプリケーション用語を使用したが、次いで、他の環境で使用できるより一般的な説明を図１に示す。図１は、ＴＳサーバ１０２とＴＳクライアント１０４とを含むネットワーク環境１００を表している。ＴＳクライアント１０４に位置する人またはアプリケーションなどのユーザは、ＴＳサーバ１０２のユーザ１０６が示すようにＴＳサーバ１０２でセッションを開始することができる。本明細書で示すユーザ１０６は、マイクロソフト遠隔サーバアプリケーションのＮＴＵｓｅｒに相当するユーザセッションの抽象である。１つの実施形態で、ＴＳクライアント１０４のユーザは、ＴＳサーバ１０２で実行アプリケーションを実行し、ＴＳクライアント１０４で画像結果を表示するなどのコンピューティングタスクを有するようにセッションを確立している。よって、示された例はアプリケーションサーバの１つである。しかし、実施形態は他のアプリケーションでも使用可能である。
【００２４】
一般的に、図１は、ＴＳクライアント１０４からＴＳサーバ１０２に送信されるユーザ入力１０８を示す。ＴＳサーバ１０２は、データの３つの個別の流れをＴＳクライアント１０４に送信し、ユーザインタフェース（ＵＩ）１１０で画像をレンダリングするための表示情報を伝達するように図示されている。ＴＳサーバ１０２は、サーフェスに描くべき内容をアプリケーションに対し特定する描画コマンド１１２を送信する。例えば、描画コマンドは、サーフェスに描かれるべき様々な線、円、矩形、画素などを特定することができる。ＴＳサーバ１０２はさらに、描画コマンドが実行されるウィンドウ１１６、１１８、および１２０のためのサーフェスまたはスプライト１４１のうちの１つといった、特定の描画サーフェスを特定することができるメタ情報１１４を送信する。これは、ＴＳサーバ１０２のサーフェスマネージャ１２４がメタ情報をＴＳクライアント１０４のサーフェスマネージャ１２６に送信することによって達成する。
【００２５】
さらに、図１は、構成情報１２２を送信するＴＳサーバ１０２を示す。構成情報は、サーフェスが個々におよび他のサーフェスとの関係でどのように表示されるかを定義する。例えば、１つの実施形態では、構成の階層は互いのサーフェスの関係を示すために使うことができる。階層の変更は構成情報１２２として送信可能である。
【００２６】
ここで図１のより詳細な説明を示すと、１つの実施形態で、セッションの開始後、ユーザ１０６のＴＳサーバ１０２は、クライアント１２８のＴＳクライアント１０４に、非複合モードから複合モードに変更する通知を送信してよい。ユーザ１０６のＴＳサーバ１０２はさらに、クライアント１２８のＴＳクライアント１０４に、最上位のアプリケーションに関して非保存モードから保存モードに変更する通知を送信してよい。
【００２７】
ＴＳクライアント１０４でクライアント１２８は構成エンジン１３０を初期化することができる。ＴＳクライアント１０４でクライアント１２８はさらにサーフェスマネージャ１２６を初期化することができる。
【００２８】
ユーザ１０６はＧＤＩ１３２と共に階層化プロセスを実行する。階層化プロセスは各々の最上位ウィンドウの層をデタッチすることを含む。各層はスプライトを定義する。層は適切な最上位ウィンドウにアタッチされ、各々の最上位ウィンドウは塗り直しを命令される。階層化プロセスを用いてメタ情報１１４として送信される各スプライトに関するメタ情報を生成することができる。例えば、階層化プロセスは各スプライトの寸法と色の深さを得るために使用される。
【００２９】
ＴＳサーバ１０２で、グラフィカルデバイスインタフェース（ＧＤＩ）１３２は表示ドライバ１３４の上にある。ＧＤＩ１３２は、アプリケーション１３６からの描画コマンドおよび描画コマンドが向けられるべきスプライト１４０を定義するリダイレクション事象を含むメタ情報を受信する。ＧＤＩは表示ドライバ１３４に特定のスプライト１４０を描くよう指示する。表示ドライバ１３４を用いることによって、描画は表示ドライバが理解するコマンドの実行によってより効果的に実行される。例えば、円は半径と色によって描くことができ、線は線作業機能を使って描くことができる。
【００３０】
表示ドライバ１３４は各描画作業に対して対象とコマンド（線を描く、円を描くなど）を受信する。表示ドライバ１３４は拡張ＲＤＰプロトコルを通じてクライアント１２８とインタフェースする。拡張ＲＤＰプロトコルは対象と描画コマンドの送信を可能にする。特に、拡張ＲＤＰプロトコルは特定のスプライトを対象とするコマンドを含む。次いで、クライアント１２８は描画コマンドでウィンドウ１１６、１１８または１２０に関連する適切なサーフェスまたはスプライト１４１を対象とすることができる。
【００３１】
暗黙の文脈情報が存在してよい。１つの実施形態で、いくつかの描画コマンドを特定の対象を定義するメタ情報なしで送信することができる。これは例えば、描画コマンドは直前の描画コマンドと同じ対象に対して意図される場合実行可能である。したがって、描画コマンドの流れが同一対象に対して意図される場合、ネットワークの帯域は、単一の対象メッセージと対象メッセージに関わる複数の描画コマンド１１２と共にメタ情報１１４を送信することによって保存することができる。
【００３２】
次いで、構成エンジン１３４と１３０は、ＵＩ１１０で要素を適切にレンダリングするために構成プロセスを実行する。構成プロセスは、構成内容と構成法に関する情報の使用を含む。構成内容は保存される画像情報とＵＩ１１０のウィンドウ１１６、１１８および１２０に依存する。構成法はユーザ入力に依存することが多い。例えば、ユーザ入力はウィンドウが互いにどのように階層化されるか、サイズ変更作業後のウィンドウの大きさ、ウィンドウの最大化と最小化によるものなどの動画、カーソルの動き、テキスト入力などに影響を及ぼす。例えば、ユーザが１つのウィンドウを背景から前景に動かすことを選択した場合、構成の階層で順番の変更が行われる。
【００３３】
次いで、図１に注目し、構成プロセスでユーザ入力を用いるプロセスを示す。図１はＴＳクライアント１０４の入力マネージャ１３８を示す。入力マネージャ１３８はキーボードからの入力、マウスの移動、マウスボタンの作動などのユーザ入力を調整する。次いで、ユーザ入力１０８はＴＳサーバ１０２に、具体的にはユーザ１０６に送信され、あたかもＴＳサーバ１０２で局所的にユーザ入力が行われるように処理できる。ウィンドウの調整に影響を与えるユーザ入力の部分は、構成エンジン１３４の構造的リダイレクション層に送られ、次いで、ＭＩＬコマンドを用いるなどして構成情報１２２としてＴＳクライアント１０４に送信され、ＴＳクライアント１０４で構成エンジン１３０に渡され、構成エンジン１３０でＵＩ１１０のウィンドウ１１６、１１８および１２０を適切にレンダリングするために構成情報１２２を使用することができる。例えば、構成エンジン１３０はサーフェスマネージャ１２６と相関して最上位の抽出全てに対しリダイレクション層またはスプライト１４１を得ることができる。次いで、構成エンジン１３０は様々な要素と動画を表示することができる。そのため、構成エンジン１３０はウィンドウの最大化および最小化、回転、タイル表示、シャッフルなどの様々な表示機能を働かせることができる。構成情報１１２は構成階層の木の変更を含んでよい。
【００３４】
構成情報はさらに画像変更の通知を含んでよい。よって、画像変更によりウィンドウを描き直すことができる。構成情報はさらに、境界線の透過、境界線の色、境界線のテクスチャ（ガラス、金属など）、ボタン表示、陰影付け、光の加減、オブジェクト回転情報など含んでよい。
【００３５】
ここで図２を参照して方法を示す。方法２００は、例えば、１つまたは複数のアプリケーションを実行するローカルコンピュータシステムおよびローカルコンピュータシステムで１つまたは複数のアプリケーションに関してユーザに画像情報を表示する遠隔コンピュータを含むネットワーク化されたコンピューティング環境で実行される。遠隔コンピュータはユーザインタフェースの複数のサーフェスを含んでよい。
【００３６】
方法は、描画コマンドを含む描画情報を遠隔コンピュータに送信する動作（動作２０２）を含む。例えば、図１が示すように、描画コマンド１１２をＴＳサーバ１０２からＴＳクライアント１０４に送信することができる。
【００３７】
再び図２を参照すると、方法２００はさらに、複数のサーフェスのうちサーフェスに描画情報が適用されるかに関する情報を定義するメタ情報を遠隔コンピュータに送信することを含む（動作２０２）。例えば、再び図１を参照すると、ＴＳサーバ１０２はメタ情報１１４をＴＳクライアント１０４に送信することができる。いくつかの実施形態では、メタ情報はサーフェスの大きさ、サーフェスの色の深さ、サーフェスの生成、サーフェスの破壊、および／またはサーフェスのサイズ変更のうちの少なくとも１つに向けられた情報を含む。
【００３８】
方法２００はさらに、図２が示すように、サーフェスの表示特徴を定義する構成情報を遠隔コンピュータに送信する動作（動作２０６）を含む。例えば、図１が示すように、ＴＳサーバ１０２は構成情報１２２をＴＳクライアント１０４に送信することができる。構成情報は、例えば、サーフェスフィーチャを定義する情報を含むことがある。サーフェスフィーチャは、例えば、フレームの色、フレームのテクスチャ、要素の陰影付け、ウィンドウの回転、最大化、および／またはウィンドウの最小化のうちの少なくとも１つを含むことがある。実施形態は、構成情報が互いのサーフェスの関係を定義する構成木情報を含むようにしてよい。例えば、構成情報は、ウィンドウを背景から前景に出し、それにより構成木の順番を変えるよう指定する情報を含むことがある。
【００３９】
方法２００はさらに、コマンドを遠隔コンピュータに送信して複合デスクトップを作動させることを含んでよい。例えば、遠隔コンピュータが非複合デスクトップモードで起動した場合、ローカルコンピュータは描画コマンド、メタ情報および構成情報の活用性を最大化するためにモードを複合デスクトップモードに変更することを示すコマンドを遠隔コンピュータに送信できる。同様に、方法２００は、保存モードを作動させるためにコマンドを遠隔コンピュータに送信することを含んでよい。
【００４０】
本明細書の先の例で説明したように、方法２００は遠隔コンピュータからユーザ入力を受け取ることを含むことがある。したがって、構成情報を送信することは、ユーザ入力に関わる情報を送信することを含む。例えば、ＴＳクライアント１０４のユーザは、最小化、最大化、サイズ変更などウィンドウ１１６、１１８および１２０の表示法に影響を与えるユーザ入力を行った場合、そのユーザ入力はＴＳサーバ１０２に提供される。次いで、ＴＳサーバ１０２は、構成エンジン１３０で使用可能な適切な構成情報１２２を提供し、どのようにクライアント１２８がＵＩ１１０で画像をレンダリングするかに影響を与えることができる。
【００４１】
本明細書で述べる実施形態はさらに、対象を識別する追加描画コマンドに対して付随のメタ情報を送信することなく追加描画コマンドを送信することを考えている。これは、他の描画コマンドに対して対象を識別するメタ情報に関わる他の描画コマンドから対象が推測可能な場合に実施されてよい。例えば、描画コマンド１１２の流れが特定の対象、例えばウィンドウ１２０のサーフェスに対して意図される場合、描画コマンドの全体の流れは、全体の流れに対してメタ情報１１４として送信される単一の対象コマンドを使用することにより、ウィンドウ１２０のサーフェスに向かうことができる。例えば、１つの実施形態では、メタ情報を送信して特定の対象を識別することができる。その後の描画コマンドは特定の対象に適用されてよい。新たなメタ情報を送信して異なる対象を識別したとき、その後の描画コマンドは異なる対象に適用される。
【００４２】
実施形態では、描画情報、メタ情報および構成情報を送信する動作がローカルコンピュータの表示ドライバへ送信することを含む場合もある。例えば、描画情報、メタ情報、構成情報が表示ドライバ１３４に送信され、次いで、当該情報が局所のＴＳクライアント１０４に送信されてよい。前述のとおり、ＴＳサーバ１０２は複数のＴＳクライアント１０４に対するホストアプリケーションであることができてよい。よって、ＴＳサーバ１０４は、ＴＳサーバ１０２に結合された各ＴＳクライアント１０４に対してユーザ１０６、サーフェスマネージャ１２４、ＧＤＩ１３２、構成エンジン１３４および表示ドライバ１３４を含んでよい。
【００４３】
方法２００はさらに、メタ情報を生成する階層化プロセスを実行してよい。階層化プロセスは最上位ウィンドウに対する層をデタッチすることおよび最上位ウィンドウに対する塗り替えを命令することを含んでよい。
【００４４】
次いで図３を参照して、遠隔コンピュータで情報を表示するもう１つの方法を示す。方法３００は、１つまたは複数のアプリケーションを実行するローカルコンピュータシステムおよびローカルコンピュータシステムで１つまたは複数のアプリケーションに関してユーザに画像情報を表示する遠隔コンピュータを含むネットワーク化されたコンピューティング環境で実行される。ユーザインタフェースで複数のサーフェスを含む遠隔コンピュータ。この方法は、ローカルコンピュータから画像コマンドを含む画像情報を受信することを含む（動作３０２）。例えば、図１が示すように、ＴＳクライアント１０４はＴＳサーバ１０２から描画コマンド１１２を受信してよい。
【００４５】
方法３００はさらに、複数のサーフェスのうちどのサーフェスに描画情報が適用されるかに関する情報を定義するメタ情報をローカルコンピュータから受信する動作（動作３０４）を含む。例えば、ＴＳクライアント１０４はＴＳサーバ１０２からメタ情報１１４を受信する。ＴＳクライアント１０４では、描画コマンド１１２をメタ情報１１４で指定される対象に適用できる。例えば、メタ情報は、ウィンドウ１２０に対応するサーフェスを特定することができる。次いで、描画コマンドはそのサーフェスに適用される。
【００４６】
方法３００はさらに、ローカルコンピュータからサーフェスの表示特徴を定義する構成情報を受信することを含む（動作３０６）。例えば、ＴＳクライアント１０４はＴＳサーバ１０２から構成情報１２２を受信する。
【００４７】
方法３００はさらに、サーフェスマネージャを参照してユーザインタフェースのレイアウトを決定する場合がある。例えば、サーフェスマネージャ１２６を参照してＵＩ１１０の画像のレイアウトを決定してよい。方法３００はさらに、サーフェスマネージャで定義されるユーザインタフェースのレイアウトに関して構成マネージャで構成情報を適用することを含んでよい。例えば、構成エンジン１３０は、クライアント１２８にＵＩ１１０で画像をレンダリングするに必要な情報を提供する場合、構成情報１２２とサーフェスマネージャ１２６のレイアウト情報とを考慮できる。
【００４８】
実施形態はまた、コンピュータが実行できる命令を担持または有するコンピュータ可読媒体あるいはそれに格納されたデータ構造を含んでよい。こうしたコンピュータ可読媒体は、汎用コンピュータまたは専用コンピュータによってアクセスできるあらゆる入手可能な媒体とすることができる。例として、こうしたコンピュータ可読媒体には、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、ＣＤ−ＲＯＭまたは他の光ディスク記憶装置、磁気ディスク記憶装置または他の磁気記憶装置、あるいは任意の他の媒体で、コンピュータで実行可能な命令またはデータ構造の形態で所望のプログラムコード手段を担持または格納するために使われ、汎用コンピュータまたは専用コンピュータによってアクセスできる媒体が含むことができるが、これらには制限されない。情報がネットワークまたは他の通信接続（ハードワイヤード、ワイヤレス、またはハードワイヤードもしくはワイヤレスの組合せ）でコンピュータに送信または提供される場合、コンピュータは接続をコンピュータ可読媒体として適切に捉える。よって、こうした接続は、コンピュータ可読媒体と適切に呼ばれる。上記の組合せもコンピュータ可読媒体の範囲内に含まれるべきである。
【００４９】
コンピュータで実行可能な命令は、例えば、汎用コンピュータ、専用コンピュータまたは専用処理装置に一定の機能または一群の機能を実行させる命令およびデータを含む。構造的特徴および／または方法論的動作に特有の言語で主題が説明されているが、添付の特許請求の範囲で定義される主題は、必ずしも前述の特定の特徴または動作に限定されるものではないことが理解される。むしろ、前述の特定の特徴および動作は特許請求の範囲を実施する例示形態として開示されている。
【００５０】
本発明は、その趣旨または基本的特徴から離れることなく他の特定の形態で具体化されてよい。説明した実施形態はあらゆる点で一例に過ぎず、限定的なものではないと見なされる。したがって、本発明の範囲はこれまでの説明ではなく添付の特許請求の範囲によって示される。特許請求の範囲の等価の意味と範囲内に収まる一切の変更はその範囲に含まれる。
【図面の簡単な説明】
【００５１】
【図１】ローカルコンピュータシステムと画像のリモートが可能な遠隔コンピュータシステムを含むトポロジを示す図である。
【図２】画像情報を送信する例示的な方法を示す図である。
【図３】画像情報を受信し使用する例示的な方法を示す図である。
【図１】
2009508249.tif 000003
【図２】
2009508249.tif 000004
【図３】
2009508249.tif 000005
【国際調査報告】
2009508249.tif 000006
2009508249.tif 000007