実行されると、クライアントデバイス上で、ウェブサイトに関連するウェブアプリケーションをインストールすることに関連する指示を受け取るステップであって、ブラウザーメニュー選択を含むブラウザーは、非永続セッションモードで実行されるように構成される、ステップと、受け取る前記ステップに応答して、前記ウェブサイトから受信できる情報を含み、前記ウェブアプリケーションが前記ブラウザーの前記非永続セッションモードの状態で起動されることを可能にするために、前記状態を反映する情報を含むように構成されたウェブアプリケーションファイルを作成するステップとを含む方法を実施するコンピューター可読命令を含む1つまたは複数のコンピューター可読記憶媒体。前記指示は、デスクトップのスタートメニュー上に前記ウェブアプリケーションをインストールすることに関連する、請求項1に記載の1つまたは複数のコンピューター可読記憶媒体。JavaScriptAPIを介して前記情報のうちの少なくとも一部を受け取るステップをさらに含む、請求項1に記載の1つまたは複数のコンピューター可読記憶媒体。前記ウェブアプリケーションファイルは、前記ウェブサイトに関連する、前記ウェブサイトの代わりに定義される境界が実施されることを可能にするように構成される、請求項1に記載の1つまたは複数のコンピューター可読記憶媒体。前記方法は、前記ウェブアプリケーションファイル内の前記情報に少なくとも部分的に基づいて、非永続セッションモード状態で前記ウェブアプリケーションを起動するステップをさらに含む、請求項1に記載の1つまたは複数のコンピューター可読記憶媒体。前記非永続セッションモードの状態を反映する前記情報は、フラグを含む、請求項1に記載の1つまたは複数のコンピューター可読記憶媒体。実行されると、1つまたは複数のプロセッサーに、ウェブアプリケーションの非永続セッションモード状態に関連する、前記ウェブアプリケーションに関連する少なくとも1つのプロパティを表示し、前記少なくとも1つのプロパティが変更されることを可能にし、前記少なくとも1つのプロパティの変化に応答して、前記変化に関連する情報を用いる前記ウェブアプリケーションに関連するウェブアプリケーションファイルに対する更新を可能にするように構成されたユーザーインターフェイスを実施させるコンピューター可読命令を含む1つまたは複数のコンピューター可読記憶媒体。前記ユーザーインターフェイスは、前記変更を適用する指示の受取に応答して前記ウェブアプリケーションファイルに対する更新を可能にするようにさらに構成される、請求項7に記載のコンピューター可読記憶媒体。前記命令は、前記1つまたは複数のプロセッサーに、さらに、前記ウェブアプリケーションに関連する前記ウェブアプリケーションファイル内の前記情報に少なくとも部分的に基づいて、非永続セッションモード状態で前記ウェブアプリケーションを起動させる請求項7に記載のコンピューター可読記憶媒体。前記ウェブアプリケーションに関連するウェブアプリケーションファイルに対する前記更新は、フラグの状態を更新することを含む、請求項7に記載のコンピューター可読記憶媒体。タスクバーピン留め、ジャンプリストタスク起動およびジャンプリストアイテム起動を含むプライベートピン留めを提供する。0003この課題を解決するための手段は、下の発明を実施するための形態でさらに説明される概念の選択物を単純化された形で紹介するために提供されるものである。この課題を解決するための手段は、請求される主題の主要な特徴または本質的特徴を識別することを意図されたものではなく、請求される主題の範囲を限定するのに使用されることも意図されていない。0004さまざまな実施形態は、エンドユーザーがクライアントデバイスデスクトップなどのクライアントデバイスにウェブアプリケーションおよびウェブサイトをインストールすることを可能にする機構を提供する。1つまたは複数の実施形態によれば、クライアントサイドコードを利用して、ウェブサイトに関連する開発者が、ユーザー対話に関連する境界を定義することを可能にし、これらの境界をランタイムエンジンによって実施させることができる。少なくともいくつかの実施形態では、開発者は、JavaScript登録商標コードを介して、スタートメニューショートカットの作成、ナビゲーション、およびいわゆるジャンプリスト統合、ならびに多数の他の特徴に関するさまざまな構成を提供することができる。0005いくつかの実施形態では、ウェブアプリケーションを、非永続セッションモードなどの少なくとも1つの特定のモードで実行するように構成することができる。少なくともいくつかの実施形態では、ウェブアプリケーションの少なくとも1つのモードを、インストール中に自動的に構成することができる。その代わりにまたはそれに加えて、ウェブアプリケーションの少なくとも1つのモードを、手動で構成することができる。0006同一の符号は、図面のすべてを通じて同様の特徴を参照するのに使用される。概要0029さまざまな実施形態は、エンドユーザーがクライアントデバイスデスクトップなどのクライアントデバイスにウェブアプリケーションおよびウェブサイトをインストールすることを可能にする機構を提供する。1つまたは複数の実施形態によれば、クライアントサイドコードを利用して、ウェブサイトに関連する開発者が、ユーザー対話に関連する境界を定義することを可能にし、これらの境界をランタイムエンジンによって実施させることができる。少なくともいくつかの実施形態では、開発者は、JavaScript登録商標コードを介して、スタートメニューショートカットの作成、ナビゲーション、およびいわゆるジャンプリスト統合、ならびに他の特徴に関するさまざまな構成を提供することができる。0030いくつかの実施形態では、ウェブアプリケーションを、非永続セッションモードなどの少なくとも1つの特定のモードで実行するように構成することができる。ウェブアプリケーションインストールプロセスの一部として、ウェブアプリケーションの少なくとも1つのモードを、関連する.websiteファイル内にモード情報を含めることによるなど、自動的に構成することができる。その代わりにまたはそれに加えて、ウェブアプリケーションモードを、手動で構成することができる。0031境界を、機能性がエンドユーザーにどのように公開されるのかに関する、開発者が定義する経験と考えることができる。境界は、別々のアプリケーションに関連付けることができるトップレベルドメインおよびサブドメインなどのウェブサイトドメイン、またはドメイン上でホスティングされるウェブサイトのサブセットに関連する。したがって、境界を、特定のウェブアプリケーションを働かせるのに利用されるドメイン、サブドメイン、フォルダ、サブサイト、プロトコル、ホスト、パス、および類似物のセットによって定義することができる。00321つまたは複数の実施形態では、ウェブサイトは、上および下で説明される機能性を選ぶことができる。この場合に、開発者は、いくつかの場合にJavaScript登録商標で表される、彼らのウェブサイトに関するユーザーの経験の境界を定義するコードを提供することができる。その代わりにまたはそれに加えて、上および下で説明される機能性を選ばないウェブサイトは、彼らに提供されるデフォルト経験を有することができる。0033次の議論では、オペレーティング環境という題名のセクションが、提供され、1つまたは複数の実施形態を使用できる1つの環境を説明する。これに続いて、統合インフラストラクチャという題名のセクションが、1つまたは複数の実施形態に従って、ウェブアプリケーションをクライアントデバイスに統合することを可能にするインフラストラクチャを説明する。次に、ジャンプリスト統合という題名のセクションでは、1つまたは複数の実施形態に従って、いわゆるジャンプリストをどのように統合できるのかを説明する。次に、タスクバーピン留めという題名のセクションでは、1つまたは複数の実施形態に従って、ウェブアプリケーションをどのようにしてタスクバーにピン留めできるのかを説明する。これに続いて、ウェブアプリケーションモードの手動構成という題名のセクションでは、ウェブアプリケーションが実行されるモード1つまたは複数をユーザーがどのように手動で変更し、かつ/または構成できるのかを説明する。最後に、例示的なシステムという題名のセクションでは、1つまたは複数の実施形態を実施するのに利用できる例示的なシステムを説明する。0034これから、1つまたは複数の実施形態を実施できる例示的なオペレーティング環境を検討されたい。オペレーティング環境0035図1に、全体的に100に、1つまたは複数の実施形態によるオペレーティング環境を示す。環境100は、1つまたは複数のプロセッサー104、1つまたは複数のコンピューター可読記憶媒体106、およびコンピューター可読記憶媒体上に常駐し、プロセッサー1つまたは複数によって実行可能な1つまたは複数のアプリケーション108を有するコンピューティングデバイス102を含む。コンピューター可読記憶媒体は、限定ではなく例として、通常はコンピューティングデバイスに関連するすべての形の揮発性および不揮発性のメモリおよび/または記憶媒体を含むことができる。そのような媒体は、ROM、RAM、フラッシュメモリ、ハードディスク、リムーバブル媒体、および類似物を含むことができる。コンピューティングデバイスの一特定の例を、図22に示し、下で説明する。0036さらに、コンピューティングデバイス102は、ウェブブラウザー110の形のソフトウェアアプリケーションを含む。任意の適切なウェブブラウザーを使用することができ、ウェブブラウザーの例は、本文書の譲受人および他者から入手可能である。さらに、コンピューター可読記憶媒体106は、上および下で説明されるように動作するウェブアプリケーションモードブラウザー111を含むことができる。ウェブアプリケーションモードブラウザー111は、それぞれウェブサイトからおよびウェブサイトへのAPI呼出しを受け取り、行い、ウェブアプリケーションインストールプロセスを監督し、境界を実施し、上および下で説明される機能性を使用可能にする、ランタイムエンジンとして働く。動作時に、ウェブアプリケーションモードブラウザーは、フルブラウザーの切り詰められたバージョンであり、通常のブラウザー機能性の多くがオフに切り替えられている。いくつかの場合に、ウェブアプリケーションモードブラウザーを、通常のブラウザーコントロールの多くを含まないクロムレスブラウザーと考えることができる。しかし、いくつかのコマンドを、ミニチュアコントロールバーを介して公開することができる。したがって、ウェブアプリケーションモードブラウザーは、ユーザーの気を散らすものの多くを除去し、ユーザーが彼らのウェブアプリケーションとどのように対話するのかをウェブサイトが制御できる、方向付けられたウェブサイト定義のユーザー経験を可能にする。0037動作時に、ウェブアプリケーションモードブラウザーを、ウェブサイトとクライアントデバイスのオペレーティングシステムとの間に論理的に常駐するものと考えることができる。したがって、ウェブアプリケーションモードブラウザーは、ウェブサイトから呼出しを受信し、それに応答して、本明細書で説明される機能性に影響するためにオペレーティングシステム呼出しを行う。同様に、ウェブアプリケーションモードブラウザーは、ウェブサイトの機能性に影響する、オペレーティングシステムからの呼出しを受け取ることができる。たとえば、オペレーティングシステムは、デスクトップのタスクバーとの対話を可能にするAPIを公開する。ウェブアプリケーションモードブラウザーは、下で明らかになるように、ウェブサイトから呼出しを受信し、それに応答して、タスクバー機能性を使用可能にするAPI呼出しを行うことができる。0038ウェブアプリケーションモードブラウザー111を、スタンドアロンコンポーネントとして実施することができる。その代わりにまたはそれに加えて、ウェブアプリケーションモードブラウザー111を、アプリケーション108および/またはウェブブラウザー110の一部として実施することができる。0039さらに、環境100は、インターネットなどのネットワーク112と、コンテンツをそれから受信し、それに送信できる1つまたは複数のウェブサイト114とを含む。そのようなコンテンツは、上および下で説明されるように、ウェブアプリケーションなど、クライアントデスクトップに統合されまたは他の形でクライアントデバイスを介して使用可能なコンテンツを含むことができる。0040コンピューティングデバイス102を、限定ではなく例として、デスクトップコンピューター、ポータブルコンピューター、携帯情報端末PDAなどのハンドヘルドコンピューター、セル電話機、および類似物などの任意の適切なコンピューティングデバイスとして実施することができる。0041例示的なオペレーティング環境を説明したので、ここで、ウェブアプリケーションをクライアントデバイスに統合することを可能にするインフラストラクチャの議論を検討されたい。統合インフラストラクチャ00421つまたは複数の実施形態によれば、ウェブサイトは、より一般的なサイトモード経験の一部として提供されるドメインナビゲーションを選ぶことができる。ドメインナビゲーションは、ユーザーが特定のドメインの内部および外部のリンクにアクセスする時に、ウェブサイトがその既存のウェブサイトの挙動をカスタマイズすることを可能にする。開発者が指定した境界の内部のリンクにアクセスする時に、関連するウェブアプリケーションの一部としてウェブアプリケーションモードブラウザーによってレンダリングされるウェブアプリケーションウィンドウ内で、コンテンツをレンダリングし、消費することができる。開発者が指定した境界の外部のリンクにアクセスする時に、関連するコンテンツを、ウェブアプリケーションモードブラウザーの外部のデフォルトブラウザーの内部でレンダリングし、消費することができる。これは、どのドメインをウェブサイトの拡張として扱わなければならず、どのドメインを拡張として扱ってはならないのかを、ウェブサイトが定義することを可能にする。00431つまたは複数の実施形態では、ナビゲーションドメインは、ウェブ開発者によって定義され、そのコンテンツが統合されたウェブサイトの一部としてウェブアプリケーションモードブラウザーによってまたはウェブアプリケーションモードブラウザーの外部でデフォルトブラウザー内で表示されるリンクを識別することができる。さらに、ウェブアプリケーションページの集合を一緒に関連付けるのに使用されるデフォルトドメインパラメータを定義することができる。0044一例として、次のインラインドメインページ定義を検討されたい。contoso.crm.dynamics.com\;.microsoft.com\;0045このドメインページ定義は、下の形のURIを、同一のデスクトップウェブアプリケーションウィンドウ内に表示することを可能にする。sales.contoso.crm.dynamics.com\hr.contoso.crm.dynamics\.microsoft.com\crm\0046同様に、このドメインページ定義は、リンク参照がデスクトップウェブアプリケーションウィンドウ内のページの内部である場合であっても、他のURIをデスクトップウェブアプリケーションウィンドウの外部に表示することを強制する。www.bing.comhome.live.com0047上のドメインページ定義では、ワイルドカードが、ウェブアプリケーションインストールAPIの内部で利用される。このAPIは、通常、ユーザーがウェブサイトによって提供されるウェブサイト統合リンクを選択する時に、ウェブサイトによって呼び出される。このAPIは、ウェブアプリケーションファイルまたは.websiteファイルに、デスクトップ、タスクバー、もしくはスタートメニュー内、またはウェブサイトショートカットを起動するのに使用される任意の他の適切な位置内の情報およびコンテンツを投入することができる。任意の適切なファイル拡張子を使用して、ウェブアプリケーションファイルを指定できることを了解し、理解されたい。ナビゲーションドメインおよび他の境界情報は、.websiteファイル内に格納される。0048.websiteファイルが起動される時に、その中のナビゲーションドメインは、ウェブアプリケーションモードブラウザー111によって実施される。ユーザーによって選択されまたはウェブサイトによってアクセスされるリンクは、それらがワイルドカードドメインと一致する限り、ウェブアプリケーションウィンドウの内部で実行され続ける。しかし、定義されたナビゲーションドメインの外部のウェブサイトが検出される時には、デフォルトブラウザーが、インスタンス化されるか他の形で使用され、そのウェブサイトに関連するコンテンツは、ウェブアプリケーションウィンドウの外部でデフォルトブラウザーの内部に表示される。0049一例として、図2を検討されたく、図2は、a.com202、b.com204、およびd.com206のナビゲーションドメインセットを有するウェブアプリケーションウィンドウ200を示し、これは、これらのドメインからのすべてのページが、ウェブアプリケーションウィンドウ200の内部に表示されることを暗示する。c.com208またはe.com210からのページがウェブアプリケーションウィンドウ200内からアクセスされる時には、これらは、ウェブアプリケーションウィンドウ200内ではなくデフォルトブラウザーウィンドウ内に表示される。0050図3に、1つまたは複数の実施形態によるJavaScript登録商標APIを300に示す。図示のJavaScript登録商標APIは、ウェブサイトがウェブアプリケーションをクライアントデスクトップと統合することを可能にする。このAPIは、ウェブアプリケーションまたはランタイムエンジンによって実施されるナビゲーションドメインを定義する。この例では、ナビゲーションドメインは、上で示したようにワイルドカード表現を使用して記述される。このAPIは、クライアントデバイス上のコンテンツおよび情報を用いる.websiteアプリケーションファイル302の投入または更新を可能にし、ナビゲーションドメインおよび他の情報を.websiteアプリケーションファイル302に格納する。これらのナビゲーションドメインは、ウェブアプリケーションが起動される時に実施される。0051その代わりにまたはそれに加えて、ウェブサイトアプリケーションファイルは、ウェブアプリケーションの1つまたは複数のモードに関連する構成パラメータ1つまたは複数および/またはフラグ1つまたは複数を含むことができる。たとえば、.websiteアプリケーションファイル302は、関連するウェブアプリケーションを起動すべきモードを示すのに使用できるフラグ、bNonPersistentSessionModeを含む。この特定の例では、bNonPersistentSessionModeには真がセットされ、これは、関連するウェブアプリケーションを非永続セッションモードまたはプライベートモードで起動することに対応する。ウェブブラウジングセッション中に、訪問されたウェブサイトの履歴、ログイン資格情報、ユーザーが入力した情報、および類似物など、ブラウジングセッションに関連する情報を保持するように、アプリケーションを構成することができる。いくつかの実施形態では、アプリケーションを、プライベートモードで実行するように構成することができ、このモードでは、ブラウジングセッションに関連する情報は、保持されず、かつ/またはブラウジングセッションの終りにシステムメモリから消去される。ウェブアプリケーションをプライベートになるようにまたは非永続セッションモードで構成することによって、ウェブアプリケーションに関連するブラウジングセッション情報は、保持されない。もう1つの例では、ユーザーは、ピン留めされたウェブサイトがアクセスされるたびに新しいセッションを起動するようにウェブアプリケーションを構成することができる。たとえば、複数のユーザーが1台のコンピューティングデバイスを共有する環境では、セッション情報を保存させるが、各ユーザーが彼または彼女のログイン情報を入力することを強制するために、ピン留めされたウェブサイトがアクセスされるたびに、新しいウェブアプリケーションを起動することが望ましい場合がある。非永続セッションモードの場合と同様に、上および下で説明されるように、さまざまな機構を介してアクセスごとの新規セッションモッドで起動されまたは実行されるように、ウェブアプリケーションを構成することができる。0052図示され説明される実施形態では、.websiteアプリケーションファイル302は、ウェブサイトがそのサイトモード構成のために定義した情報ならびにウェブアプリケーションモードブラウザー構成1つまたは複数に関連する情報を含む。この情報は、ウェブアプリケーションモードブラウザーによって表示される初期ページである開始URL、ウェブサイトが指定したナビゲーションドメインのすべて、ウェブアプリケーションタイトル、およびいわゆるお気に入りアイコンを含む。下で説明するように、他の情報を含めることができる。0053ここで、ウェブアプリケーションがクライアントサイドで起動された後に、ウェブアプリケーションモードブラウザーは、ウェブアプリケーションファイルを読み取り、その中で定義された境界およびモード1つまたは複数を実施する。上で注記したように、ウェブアプリケーション経験は、特定のウェブサイトおよびそのニュアンスの知識を有する開発者によって定義されるので、完全で統合されたユーザー経験を提供することができる。0054図4は、1つまたは複数の実施形態によるインストール方法のステップを説明する流れ図である。この方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せによって実行することができる。少なくともいくつかの実施形態では、この方法の諸態様は、クライアントデバイス上で実行されるソフトウェアによって実行される。0055ステップ400では、ウェブサイト統合特徴を選択する。このステップを、任意の適切な形で実行することができる。通常、このステップは、ユーザーが、ウェブアプリケーションインストールプロセスを開始するために手段を選択するか他の形でアクションを行う時に実行される。たとえば、ユーザーは、彼がウェブアプリケーションを統合することを可能にするリンクを選択することができる。これをどのように行うことができるのかの特定の例を、下で提供する。0056ステップ402では、クライアントデバイス上でウェブアプリケーションファイル本明細書では.websiteファイルと表すを作成する。このファイルは、当初に作成される時に、ウェブサイトからまたはウェブサイトの代わりに受信されたコンテンツおよび情報ならびにウェブアプリケーションモード構成1つまたは複数をその後に投入できるアーティファクトまたはシェルを構成することができる。ステップ404では、ウェブアプリケーションファイルにウェブアプリケーションコンテンツを投入する。このステップを、任意の適切な形で実行することができる。たとえば、このステップを、上および下で提供されるJavaScript登録商標API例を使用することによって実行することができる。その代わりにまたはそれに加えて、このステップを、HTMLなどのマークアップの使用を介して実行することができる。0057クライアント上でウェブアプリケーションファイルを作成し、これにコンテンツを投入したので、今や、ウェブアプリケーションを起動し、これと対話することができる。0058図5は、1つまたは複数の実施形態によるウェブアプリケーション対話方法のステップを説明する流れ図である。この方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せによって実行することができる。少なくともいくつかの実施形態では、この方法の諸態様は、クライアント上で実行されるソフトウェアおよびウェブサイトをサポートするサーバーで実行されるソフトウェアによって実行される。したがって、この図の1つの列は、これらのステップがクライアントによってまたはクライアントでたとえばウェブアプリケーションモードブラウザーによって実行されることを示すためにクライアントと示され、1つの列は、これらのステップがウェブサイトによってまたはウェブサイトの代わりに実行されることを示すためにウェブサイトと示される。0059ステップ500では、サイトモードのユーザー選択を受け取る。このステップを、任意の適切な形で実行することができる。たとえば、クライアントデスクトップ上にインストールされたショートカットを利用して、サイトモード選択を受け取ることができる。サイトモード選択の受取に応答して、ステップ502では、開始URLを要求する。開始URLは、上で説明したウェブアプリケーションファイル内で見つけることができる。0060ステップ504では、開始URL要求を受信する。ステップ506では、開始URLに関連するコンテンツを含む関連するウェブリソースをクライアントに返す。0061ステップ508では、関連するウェブリソースを受信し、ステップ510では、ウェブリソースをウェブアプリケーションウィンドウ内でレンダリングする。上で説明されるように、ウェブアプリケーションウィンドウは、ウェブアプリケーションモードブラウザーによってレンダリングされる。いくつかの実施形態では、上で説明されるように、ウェブアプリケーションモードブラウザーランタイム構成を、部分的にウェブアプリケーションファイル内で見つけることができる。ステップ512では、ウェブアプリケーションウィンドウ内でレンダリングされたリソースに関するユーザー対話を受け取る。ユーザー対話は、任意の適切なタイプのユーザー対話を含むことができる。たとえば、ユーザー対話は、ウェブアプリケーションウィンドウ内から発するナビゲーションアクティビティを含むことができる。ステップ514では、ユーザー対話がウェブアプリケーションファイルによって定義される境界内であるかどうかを確かめる。ユーザー対話がウェブアプリケーションファイルによって定義される境界内である場合には、ステップ516で、ウェブアプリケーションウィンドウ内でユーザー対話に関連するコンテンツをレンダリングする。その一方で、ユーザー対話がウェブアプリケーションファイルによって定義される境界内ではない場合には、ステップ518で、デフォルトウェブブラウザー内でユーザー対話に関連するコンテンツをレンダリングする。0062この形で、特定のウェブサイトについてウェブサイト開発者によって定義された境界を実施して、ユーザー経験が開発者の望み通りに保たれることを保証することができる。たとえば、ウェブサイトによって定義された開始URLは、ホームページであり、ウェブアプリケーションモードでのホームページへの後続アクセスは、ユーザーの元々定義されたブラウザーホームページではなく、開始URLにナビゲートする。これは、いくつかの関連しないホームページではなく、ウェブアプリケーション固有ページへのすばやいアクセスを可能にする。これは、エンドユーザーが、正確に働く場合とそうでない場合とがある彼ら自体のサイト固有経験を定義する必要を軽減する。したがって、完全で統合されたインテリジェントに管理される経験を、エンドユーザーに提供することができる。0063例示的なインストールおよび対話経験を説明したので、ここで、ジャンプリスト統合の概念を検討されたい。ジャンプリスト統合00641つまたは複数の実施形態では、開発者は、ウェブサイトが、そのウェブサイトと対話するのに使用できる一連のいわゆるジャンプリストタスクをデスクトップ統合中に定義することを可能にすることができる。さらに、少なくともいくつかの実施形態では、ウェブサイトは、カスタムジャンプリストを作成し、更新することができる。0065ジャンプリストを、ユーザーに提示される関連するタスクまたはコンテンツのセットを構成するリストと考えることができる。ジャンプリストを介して、ウェブサイトは、ユーザーへの関連する有用な情報の留出を促進することができる。ジャンプリストは、特定のウェブアプリケーションの能力または機能性に関連する。たとえば、電子メールアプリケーションのジャンプリストは、連絡先を開き、新規電子メールメッセージを作成するなどの能力をユーザーに与えるタスクを含むことができる。いくつかの場合に、ジャンプリストは、関連する最もしばしば使用されるコマンドおよびデータのリストを含むことができる。00661つまたは複数の実施形態では、ジャンプリスト機能性を、静的要素と動的要素との両方を含むように実施することができる。0067開発者は、上で説明したように、ウェブアプリケーションファイルに投入するウェブアプリケーションインストールプロセス中に静的要素を定義することができる。静的要素に関連するセッティングを、ウェブアプリケーションファイルの内部に格納することができる。1つまたは複数の実施形態では、セッティングは、リスト名および関連するタスクを含むことができる。少なくともいくつかの例では、静的要素は、一般的に使用される機能性を表す要素を構成することができる。0068動的要素に関連するセッティングを、ウェブアプリケーションウィンドウの内部で走行するウェブサイトページによって駆動することができる。これらのセッティングは、ユーザーにとって認識できるしるしを動的に公開するセッティングを含む。たとえば、あるセッティングが、カスタムジャンプリストにアイテムを追加することができ、あるセッティングが、オーバーレイアイコンを表示することができ、その例は、下で提供される。少なくともいくつかの実施形態では、動的セッティングを、ウェブアプリケーションが起動されるたびにクリアし、ウェブアプリケーションスクリプトコードによって構成することができる。0069一実施形態によるカスタムジャンプリストの例として、全体的に600にクライアントデスクトップの一部を示す図6を検討されたい。カスタムジャンプリスト602が、1つまたは複数の実施形態に従って公開されている。ここで、静的要素は、604に示され、動的要素は、606に示されている。この例では、静的要素リスト名は、タスクであり、タスクまたは静的要素は、新規電子メールメッセージ、新規面会予約、新規連絡先、および新規タスクである。動的要素リスト名は、今日であり、タスクまたは動的要素は、この例では、ユーザーのカレンダから生成されたリマインダーを含む。動的要素は、関連するウェブサイトによって動的に投入される。したがって、この例では、動的要素またはコンテンツは、通常はユーザーのアクションと独立の、ユーザーへの通知の提供に関連する。0070上で注記したように、ジャンプリストを、デスクトップ統合プロセス中に定義することができる。タスクおよびジャンプリスト定義を、ウェブアプリケーションファイルの内部に格納することができる。一例として、700に1つまたは複数の実施形態によるJavaScript登録商標APIを示す図7を検討されたい。図示のJavaScript登録商標APIは、ウェブサイトがクライアントデスクトップと統合し、ジャンプリストを定義することを可能にする。このJavaScript登録商標APIは、customtaskおよびcustomJumpListの存在を除いて、図3に関して説明されたものと同一またはこれに類似するものとすることができる。簡潔さのために、図3の内容の一部は、省略されている。少なくともいくつかの実施形態では、ジャンプリストタスクの静的リストの初期作成を、HTML文書の内部で定義されるマークアップによって、たとえばHTMLタグを使用して定義することができる。0071たとえば、静的リスト機能性を記述するのにメタタグを使用する、すぐ下の例を検討されたい。<METAname=msapplication-taskcontent=name=Task;uri=http://marap/test3.html;icon-uri=http://marap/icon3.ico/>0072タスクが実行される時に、1つまたは複数の実施形態では、2つのオプションがある。たとえば、タスクに関連するURLを、現在見られているウェブページを含むものと同一のウェブアプリケーション/ブラウザーウィンドウの内部で開くことができる。その代わりにまたはそれに加えて、新しいページを起動することができる。その代わりにまたはそれに加えて、新しいポップアップウィンドウを表示することができる。0073これらのパラメータが定義され、システムによって読み取られた後に、下で説明するように、ユーザーが彼らのデスクトップ上にウェブサイトをインストールする時に、スタートメニューに追加することまたはタスクバーにピン留めすることによって、これらのパラメータを使用することができる。それと同時に、少なくともいくつかの実施形態では、ジャンプリスト上でウェブサイトクライアントコードによって操作できる動的値のセットがある。0074カスタムタスクは、ウェブサイトによって、上で説明されたように静的タスクを定義するのに利用される。この例では、静的タスクは新規メッセージ静的タスクである。このAPIは、デスクトップ上に.websiteアプリケーションファイル702を作成し、ナビゲーションドメイン図3の例と同様およびジャンプリストに関連する情報などの他の情報を格納する。0075図示の説明される実施形態では、.websiteアプリケーションファイル702は、ウェブサイトがそのサイトモード構成のために定義した情報を含む。この情報は、開始URL、ウェブサイトが指定したナビゲーションドメインのすべて具体的には図示せず、ウェブアプリケーションタイトル、およびいわゆるお気に入りアイコンを含む。他の情報は、上で言及した新規メッセージに関連するカスタムタスクと、カスタムリストとを含む。この例では、カスタムリスト要素は、ウェブアプリケーションがクライアント上で走行しつつある時にウェブサイトによって動的に投入され得る動的要素である。ここで、friends友人指定は、動的コンテンツに関連するヘッダを含む。したがって、この場合に、動的コンテンツは、彼らの友人がオンラインである時のユーザーへの通知の提供に関連する。ここで、カスタムリストは、ウェブアプリケーション内に常駐していない別々のAPIである。しかし、カスタムタスクは、ウェブアプリケーション内に常駐する。0076上で述べられるように、.websiteファイルを使用して、非永続セッションモードなどの特定のモード1つまたは複数で実行するようにウェブアプリケーションを構成することができる。いくつかの実施形態では、そのようなウェブアプリケーションに関連するジャンプリストタスクが選択される時に、新しいウェブアプリケーションを指定されたモード1つまたは複数で起動することができる。もう1つの実施形態では、ジャンプリストタスクが選択される時に、ウェブアプリケーションが既に起動され、実行されている場合に、タスクを、ウェブアプリケーションのモード1つまたは複数を変更せずに実行することができる。たとえば、実行されているウェブアプリケーションが、非永続セッションモードで実行されていない場合には、選択されたジャンプリストタスクの実行は、関連する.websiteファイルに含まれるものにかかわりなく、ウェブアプリケーションのモードを変更しない。0077動作時に、ウェブアプリケーションが走行しつつある時に、静的要素に関連するアイテムを、事前にフェッチし、キャッシングすることができる。その一方で、ウェブアプリケーションが走行しつつある時に、動的要素に関連するアイテムを、ウェブサイトによってオンザフライで提供することができる。動的要素に関連するアイテムをウェブアプリケーションにオンザフライでどのように提供できるのかの実施態様の例として、図8を検討されたい。0078図8に、メッセージが到着したことをユーザーが知ることを可能にするために、ウェブサイトがカスタムジャンプリストと動的にどのように対話できるのかを示す。この例では、JavaScript登録商標800は、ウェブサイトが、ウェブアプリケーションモードブラウザー内でホスティングされるページに更新をどのようにして送信できるのかを示す。ブラウザー内で実行されるクライアントサイドコードは、更新を受信し、スクリーン上でコンテンツを更新し、ジャンプリストにそのリストを更新する要求を送る責任を負う。この例では、ウェブサイトは、リアルタイム経験を提供するためにジャンプリストに情報をプッシュすることができる。ここで、新しいメッセージ、たとえば新規メッセージ0および新規メッセージ1がウェブサイトによって受信される時に、JavaScript登録商標呼出しを、ウェブアプリケーションから行って、ジャンプリスト802を更新することができる。少なくともいくつかの実施形態では、通知が、タスクバー804内に現れて、関連情報が受信されたことをユーザーに知らせることができる。通知は、タスクバー内の任意の適切な位置に現れることができ、任意の適切なタイプの通知を含むことができる。たとえば、通知は、ウェブアプリケーションに関連するアイコン806の中またはその付近に現れることができる。その代わりにまたはそれに加えて、通知は、ユーザーの目を引くために点滅することができる。0079一例として、図9を検討されたい。この図では、クライアントデスクトップの一部が、全体的に900に示されている。タスクバー901は、現在のウェブアプリケーションに関連するアイコン902を含む。ここでは、オーバーレイアイコン904が、アイコン902内にレンダリングされていることに留意されたい。この例では、ユーザーは、新規メッセージを受信しており、ウェブサイトは、上で説明したようにウェブアプリケーションを呼び出して、過度にアイコン904をアイコン902内にレンダリングさせた。これは、新規メッセージが到着したことの通知をユーザーに提供する。過度にアイコン904を見ることに応答して、ユーザーは、ジャンプリスト905にアクセスして、現在起こりつつあるまたはこれから起ころうとしている面会予約を示す要素908を公開する。要素906も公開されることにも留意されたい。JavaScript登録商標抜粋910は、オーバーレイアイコンを更新するのに使用できるコードの一例を示す。0080ウェブサイトとウェブアプリケーションとの間の動的対話は、さまざまな他の形で発生することができる。たとえば、少なくともいくつかの実施形態で、プレビューウィンドウを、ウェブサイトに関するユーザーのアクションに応答して、そのウェブサイトからジャンプリストにプッシュすることができる。図示され説明される実施形態では、プレビューウィンドウは、ウェブサイトによって提供されるミニチュアビューである。プレビューウィンドウを、任意の適切なタイプのユーザーアクションに応答して提供することができる。たとえば、少なくともいくつかの実施形態では、プレビューウィンドウを、ウェブサイトに関連するタスクバーアイコンの上でのマウスホバーに応答して、そのウェブサイトからジャンプリストにプッシュすることができる。その代わりにまたはそれに加えて、プレビューウィンドウを、ウェブアプリケーションのタスクバーアイコンの上にカーソルを置き、左クリックすることによって提供することができる。0081一例として、図10を検討されたい。この図には、クライアントデスクトップの一部が、全体的に1000に示されている。タスクバー1001は、現在のウェブアプリケーションに関連するアイコン1002を含む。ここでは、ユーザーが、カーソルをアイコン1002の上に置いていることに留意されたい。それに応答して、プレビューウィンドウ1004がレンダリングされている。動作時に、カーソルをアイコンの上に置くユーザーのアクションに応答して、イベントが、ウェブページに送信される。そのイベントの受信に応答して、ウェブページは、プレビューを動的に提供することができ、あるいは、キャッシングされたプレビューウィンドウをレンダリングさせることができる。0082少なくともいくつかの実施形態では、プレビューウィンドウをウェブサイトによって使用して、ツールバーボタンおよび関連する挙動を定義することもできる。たとえば、図示され説明される実施形態では、ウェブアプリケーションは、メディアプレイヤアプリケーションと、プレビューウィンドウ1004にオーバーレイされるユーザーインターフェイス手段1006内に現れる3つのツールバーボタンとを含む。これらのボタンは、一時停止ボタン、停止ボタン、および再生ボタンを含む。少なくともいくつかの実施形態では、ツールバーボタンを、リモートサーバーと対話する必要を回避するクライアントサイドコードを使用して実施することができる。たとえば、個々のボタンを、特定のウェブページについて登録することができる。各ボタンは、構成され、IDを割り当てられる。あるリスナが、すべてのボタンイベントについて登録される。ボタンが押し下げられた時に、イベントが、生成され、ブラウザーに戻って通信され、このブラウザーは、そのイベントを登録されたイベントリスナに伝搬させる。イベントは、押し下げられたボタンを含む。これは、ボタンの間の曖昧さ排除を可能にする。実施態様の例0083実施態様の例では、ウェブ開発者は、次のJavaScript登録商標関数を使用して、ジャンプリスト内のカスタムリストを更新し、タスクバーオーバーレイアイコンを更新することができる。ListCreationBehaviorリスト作成挙動0084これは、カスタムリストのタイトルであるリスト名を定義する。この値は、リストヘッダとして表示される。オプションで、アイテムの名前を含むアイテムリスト、そのアイテムのURI値、およびそのアイテムに関連するイメージを提供して、当初にリストに投入することができる。ブラウザーがウェブアプリケーションモードで開始される時に、この機能性をサポートすることができる。ListUpdateBehaviorリスト更新挙動0085リストアイテム値は、特定のリストアイテムを更新するために提供される。リストアイテム値は、アイテムの名前、そのアイテムのURI値、およびそのアイテムに関連するイメージを含む。ブラウザーがウェブアプリケーションモードで開始される時に、この機能性をサポートすることができる。SetOverlayIconオーバーレイアイコンをセット0086既存のタスクバーアイコンのオーバーレイとして使用されるアイコンをポイントするURI値が指定される。ブラウザーがウェブアプリケーションモードで開始される時に、この機能性をサポートすることができる。SetPreviewImageプレビューイメージをセット0087タスクバープレビューイメージまたはサムバープレビューの絵図表現として使用されなければならないイメージをポイントするURI。プレビューは、ユーザーがタスクバーアイコンを左マウスボタンでクリックする時に表示される。ClearOverlayIconオーバーレイアイコンをクリア0088これは、タスクバーアイコン上の既存の過度にアイコンを除去する。ブラウザーがウェブアプリケーションモードで開始される時に、この機能性をサポートすることができる。0089ウェブ開発者は、次のJavaScript登録商標関数を使用して、特定のウェブサイトのタスクバープレビューウィンドウ内に表示されるツールバーボタンのセットを定義し、変更することができる。ToolbarButtonInstallationツールバーボタンインストール0090ボタンIDのリストが、ヒントおよびイメージURLと共に指定される。イベントは、ユーザーがツールバーボタンを選択した時に、処理のためにウェブサイトに渡される。ウェブサイトは、ボタンイベントの間の曖昧さを排除することができる。この呼出しは、ボタンを表示するためにサイトモードウィンドウが開かれる時に、少なくとも1回実行される。ブラウザーがウェブアプリケーションモードで開始される時に、この機能性をサポートすることができる。UpdateImageイメージを更新0091これは、指定されたボタンIDの状態および可視性を識別する。状態は、有効または無効とすることができる。少なくともいくつかの実施形態では、デフォルトで、ボタンは有効である。ビューは、表示するまたは隠すのいずれかとすることができる。デフォルトで、定義されたボタンは可視である。ブラウザーがウェブアプリケーションモードで開始される時に、この機能性をサポートすることができる。0092図11は、1つまたは複数の実施形態によるインストール方法のステップを説明する流れ図である。この方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せによって実行することができる。少なくともいくつかの実施形態では、この方法の諸態様は、クライアントデバイス上で実行されるソフトウェアによって実行される。0093ステップ1100では、ウェブサイト統合特徴を選択する。このステップを、任意の適切な形で実行することができる。通常、このステップは、ユーザーが、ウェブアプリケーションインストールプロセスを開始するために、手段を選択するか、他の形でアクションを行う時に実行される。たとえば、ユーザーは、彼がウェブアプリケーションを統合することを可能にするリンクを選択することができる。これをどのように行うことができるのかの特定の例は、下で提供される。0094ステップ1102では、クライアントデバイス上でウェブアプリケーションファイル本明細書では.websiteファイルと表すを作成する。このファイルは、当初に作成される時に、ウェブサイトからまたはウェブサイトの代わりに受信されたコンテンツおよび情報ならびにすべての関連するウェブアプリケーションを起動すべき少なくとも1つのモードに関連するコンテンツ、情報、および/またはフラグをその後に投入できるアーティファクトまたはシェルを構成することができる。ステップ1104では、この例ではジャンプリストを含むウェブアプリケーションコンテンツをウェブアプリケーションファイルに投入する。このステップを、任意の適切な形で実行することができる。たとえば、このステップを、その例が上で説明されるJavaScript登録商標APIの使用を介して実行することができる。その代わりにまたはそれに加えて、このステップの諸態様を、HTMLなどのマークアップの使用を介して実行することができる。0095クライアント上でウェブアプリケーションファイルを作成し、投入したので、今や、ウェブアプリケーションを任意の適切な時に起動することができる。0096図12は、1つまたは複数の実施形態による方法のステップを説明する流れ図である。これらのステップを、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せによって実行することができる。少なくともいくつかの実施形態では、この方法を、サーバー上で実行されるソフトウェアに関連してクライアント上で実行されるソフトウェアによって実行することができる。0097ステップ1200では、ジャンプリストに関連するユーザーアクションを受け取る。任意の適切なユーザーアクションを受け取ることができ、その例は上で提供される。たとえば、少なくともいくつかの実施形態では、ユーザーアクションを、明確に表示されたジャンプリストまたは表示されていないジャンプリストに関して受け取ることができる。その代わりにまたはそれに加えて、ユーザーアクションを、ウェブアプリケーションに関連する表示されたアイコンに関して受け取ることができる。アイコンを、たとえば、デスクトップタスクバー内または任意の他の適切な位置に表示することができる。そのようなアクションの例は、上で提供される。0098ステップ1202では、ユーザーアクションに関連するコンテンツを提示する。たとえば、提示されるコンテンツは、ジャンプリスト自体を含むことができる。ジャンプリストを、任意の適切なタイプのユーザーアクションに応答して提示することができ、このユーザーアクションの例は、上で提供される。提示されるコンテンツは、ジャンプリスト自体以外のコンテンツを含むこともできる。たとえば、カスタムプレビューウィンドウを、たとえばタスクバーアイコンの左クリックなどのユーザーアクションに応答して提示することができる。たとえば、ユーザーは、新規メールメッセージを作成するか作文することを選択することができる。0099図13は、1つまたは複数の実施形態による方法のステップを説明する流れ図である。この方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せによって実行することができる。少なくともいくつかの実施形態では、この方法の諸態様は、クライアント上で実行されるソフトウェアおよびウェブサイトをサポートするサーバー上で実行されるソフトウェアによって実行される。したがって、この図の1つの列は、これらのステップがクライアントによってまたはクライアントで実行されることを示すためにクライアントと示され、1つの列は、これらのステップがウェブサイトによってまたはウェブサイトの代わりに実行されることを示すためにウェブサイトと示される。00100ステップ1300では、動的ジャンプリストアイテムに関連する情報を受け取る。任意の適切なジャンプリストアイテムが、情報がその上で受け取られる基礎として働くことができ、その例は上で提供される。ステップ1302では、通知を生成し、ステップ1304では、ウェブアプリケーションを実行するクライアントデバイスに通知を送信する。00101ステップ1306では、通知を受信し、ステップ1308では、認識できる通知をユーザーに提供する。任意の適切なタイプの認識できる通知を提供することができる。たとえば、少なくともいくつかの実施形態では、認識できる通知を、オーバーレイアイコンまたは点滅するウェブアプリケーションアイコンなどの視覚的に認識できる通知とすることができる。その代わりにまたはそれに加えて、認識できる通知は、ベルまたはブザーなどの聴覚的に認識できる通知を含むことができる。00102ジャンプリスト統合に関連するさまざまな実施形態を検討したので、これから、1つまたは複数の実施形態による、ウェブサイトがタスクバーなどのデスクトップ特徴にどのようにしてピン留めされるようになることができるのかの議論を検討されたい。タスクバーピン留め00103ウェブアプリケーションがクライアントデスクトップまたはタスクバーと統合されるようになることができるさまざまな形がある。少なくともいくつかの実施形態では、ウェブアプリケーションを、ドラッグアンドドロップ操作を介してデスクトップと統合することができる。その代わりにまたはそれに加えて、ウェブアプリケーションを、ウェブブラウザーのメニュー選択を介して統合することができる。その代わりにまたはそれに加えて、ウェブアプリケーションを、関連するウェブサイト自体によって統合することができる。これらの実施形態の例を、下でそれ自体の見出しの下で議論する。ドラッグアンドドロップ操作を介する統合001041つまたは複数の実施形態では、ウェブアプリケーションを、ドラッグアンドドロップ操作を介してデスクトップまたはタスクバーに統合することができる。一例として、図14を検討されたい。この図では、クライアントデスクトップが、全体的に1400に示されている。ウェブブラウザーウィンドウ1402は、ウェブサイトURLをその中に表示されたアドレスバー1404を含む。このURLに関連して、お気に入りアイコン1406と呼ばれるアイコンが示されている。さらに、デスクトップ1400は、タスクバー1408を含む。00105図15に、1つまたは複数の実施形態によるドラッグアンドドロップ操作を概略的に示す。この例では、カーソルは、お気に入りアイコン1406の上に置かれている。お気に入りアイコンを左クリックし、これをタスクバー1408に沿ってドラッグすることによって、関連するウェブアプリケーションこの場合にはメッセージボードアプリケーションを、デスクトップのタスクバー1408にピン留めすることができる。ドラッグアンドドロップ操作は、上で説明したようにウェブアプリケーションを統合する統合プロセスを開始し、したがって、これをタスクバーにピン留めする。001061つまたは複数の実施態様では、ウェブアプリケーションに関連するウェブページが、ブラウザー内に開かれたタブを有する場合に、お気に入りアイコンがタスクバー上にドロップされた後に、関連するタブは、ブラウザーのウィンドウから消えることができる。その代わりにまたはそれに加えて、タブを除去するのではなく、タブの内容を新規タブページに置換することができる。単一のタブがブラウザーウィンドウ内で開かれている場合には、お気に入りアイコンがタスクバーにピン留めされた後に、ブラウザーウィンドウが消える。この点で、元のサイトに含まれたタブを、ブラウザーが閉じる前だがウェブアプリケーションがピン留めされた後に除去することができる。さらに、少なくともいくつかの実施形態では、ドラッグ操作がタスクバーに入る時に、タスクバーへピン留めの形のヒントを提示して、ピン留め機能性についてユーザーに知らせることができる。00107さらに、タスクバーにピン留めされたウェブサイトまたはウェブアプリケーションの状態を、ウェブアプリケーションが初めてインスタンス化される時に、新たに表示されるウィンドウに移植することができる。これは、ユーザーが、アプリケーションを使用できるようになるためにサイトへ資格情報を再入力する必要をなくすことができる。00108いくつかの実施形態では、少なくとも1つの特定のモードで起動されるように、ウェブアプリケーションを自動的に構成することができる。やはり1つまたは複数の実施形態によるドラッグアンドドロップ操作を示す図15bを検討されたい。この特定の例では、ウェブブラウザーウィンドウ1402は、指示バー1502によって示されるように、この場合にはInPrivateインプライベートモードと説明される非永続セッションモードで実行されている。ドラッグアンドドロップ操作が、上で説明されるようにウェブアプリケーションを統合する統合プロセスを開始する時に、統合プロセスは、ウェブブラウザーウィンドウ1402がどのモード1つまたは複数で実行されているか、この場合にはInPrivateモードが有効になった状態で実行されていることを自動的に識別することができ、識別されたモードの状態を反映する関連するwebsiteファイルにコンテンツを追加することができる。ウェブアプリケーションがその後に起動される時には、.websiteファイル情報を使用して、ウェブアプリケーションを特定のモード1つまたは複数で自動的に起動することができる。00109上で説明されるように、ウェブサイトまたはウェブアプリケーションをタスクバーにピン留めし、インストールプロセスを完了したので、今や、ウェブアプリケーションを、関連するお気に入りアイコンを単純にクリックすることによって、タスクバーから起動することができる。00110図16は、1つまたは複数の実施形態によるインストール方法のステップを説明する流れ図である。この方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せによって実行することができる。少なくともいくつかの実施形態では、この方法の諸態様は、クライアント上で実行されるソフトウェアによって実行される。00111ステップ1600では、ウェブアプリケーションインスタンス化に関連するドラッグアンドドロップ操作の指示を受け取る。このステップを、任意の適切な形で実行することができる。すぐ上で説明した実施形態では、このステップは、ユーザーが、関連するウェブアプリケーションを彼らのデスクトップに統合する欲求をウェブサイトに示すために、ウェブサイトに関連するお気に入りアイコンなどのアイコンをドラッグアンドドロップする時に実行される。たとえば、ユーザーは、タスクバー、クイック起動領域、またはデスクトップキャンバスなどのデスクトップ上のある他の位置にお気に入りアイコンをドラッグアンドドロップすることができる。ステップ1602では、ドラッグアンドドロップ操作に応答して、ウェブアプリケーションファイルを作成する。図示され説明される実施形態では、当初に作成されるウェブアプリケーションファイルは、ジャンプリストタスク、開始URL、お気に入りアイコン、または静的ジャンプリストタスク、代替開始URL、代替お気に入りアイコン、および類似物などの他のプロパティなどの関連するウェブサイトからの情報をまだ含まないアーティファクトまたはシェルである。これらを、上で説明されたように新しいマークアップおよび/またはJavaScript登録商標APIを介して後に追加することができる。それに加えてまたはその代わりに、ウェブアプリケーションファイルは、非永続セッションモードで実行するなど、ウェブアプリケーションを特定のモード1つまたは複数で起動することに関連する情報を含むことができる。JavaScript登録商標APIを使用するもの以外の技法を、請求される主題の趣旨および範囲から逸脱せずに利用できることを了解し、理解されたい。ブラウザーメニュー選択を介する統合001121つまたは複数の実施形態では、ウェブアプリケーションを、ウェブブラウザーのメニュー選択を介して統合することができる。一例として、図17を検討されたい。この図では、クライアントデスクトップが、全体的に1700に示されている。ウェブブラウザーウィンドウ1702は、ULRを表示されたアドレスバー1704を含む。さらに、デスクトップ1700は、タスクバー1706を含む。ページメニューの形のブラウザーメニューアイテム1708が、示されている。ページメニューをドロップダウンしてメニュー選択1710を公開することによって、メニューアイテムまたはメニュー選択スタートメニューに追加が表示される。このオプションを選択することによって、ウェブサイトまたはウェブアプリケーションを、デスクトップのスタートメニューに追加することができ、インストールプロセスを、上で説明されたように開始することができる。その代わりにまたはそれに加えて、タスクバーに追加メニューアイテムまたはメニュー選択を表示して、インストールプロセスの開始を可能にすることができる。図17には示されていないが、ウェブブラウザーウィンドウ1702が、非永続セッションモードなどのさまざまなモード1つまたは複数で実行中であってもよいことを了解し、理解されたい。これらのモード1つまたは複数は、インストールプロセス中に識別され得、ウェブアプリケーションがどのようにインストールされ、かつ/または起動されるのかに影響することができる。00113図18は、1つまたは複数の実施形態によるインストール方法のステップを説明する流れ図である。この方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せによって実行することができる。少なくともいくつかの実施形態では、この方法の諸態様は、クライアント上で実行されるソフトウェアによって実行される。00114ステップ1800では、ブラウザーメニュー選択を受け取る。このステップを、任意の適切な形で実行することができる。すぐ上で説明した実施形態では、このステップは、ユーザーが、特定のウェブサイトにナビゲートし、メニュー選択を公開するためにブラウザーメニューをドロップダウンし、その後、ウェブサイトに関連するウェブアプリケーションのインストールの開始に関連するメニューアイテムを選択することによってアクションを行う時に実行される。00115ステップ1802では、ブラウザーメニュー選択の受取に応答してウェブアプリケーションファイルを作成する。図示され説明される実施形態では、当初に作成されるウェブアプリケーションファイルは、ジャンプリストタスク、開始URL、お気に入りアイコン、および類似物などの関連するウェブサイトからの情報をまだ含まないアーティファクトまたはシェルである。これらを、上で説明されたように新しいマークアップおよび/またはJavaScript登録商標APIを介して後に追加することができる。その代わりにまたはそれに加えて、ウェブアプリケーションファイルは、上で述べられるように、関連するウェブアプリケーションが起動される少なくともいくつかのモード1つまたは複数を指定する情報を含むことができる。JavaScript登録商標APIを使用するもの以外の技法を、請求される主題の趣旨および範囲から逸脱せずに利用できることを了解し、理解されたい。関連するウェブサイトを介する統合001161つまたは複数の実施形態では、デスクトップとのウェブアプリケーションの統合を、ウェブページから行うことができる。これらの実施形態では、特定のウェブサイトは、ウェブアプリケーションをデスクトップに統合するのにJavaScript登録商標などのコードを使用することによって、統合アクティビティを選ぶことができる。これは、ウェブサイトが、統合開始手段を制御することを可能にする。00117一例として、図19を検討されたい。この図には、クライアントデスクトップが、全体的に1900に示されている。ウェブブラウザーウィンドウ1902は、URLをその中に表示されたアドレスバー1904を含む。さらに、デスクトップ1900は、タスクバー1906を含む。さらに、ブラウザーウィンドウ1902内に表示されるウェブページは、デスクトップに追加という題名のリンク1908を含む。このリンクをクリックすることによって、ユーザーは、上で説明されたようにウェブアプリケーションインストールプロセスを開始することができる。図19には示されていないが、ウェブブラウザーウィンドウ1902が、非永続セッションモードなど、さまざまなモード1つまたは複数で実行中であってもよいことを了解し、理解されたい。これらのモード1つまたは複数は、インストールプロセス中に識別され得、ウェブアプリケーションがどのようにインストールされ、かつ/またはその後に起動されるのかに影響することができる。00118少なくともいくつかの実施形態では、リンク選択が行われた後に、ユーザーが行おうとしているユーザーアクションと、彼らの新たに作成されるショートカットにどこでアクセスすべきかとを説明する、モーダル確認ダイアログを提示することができる。この確認ダイアログは、ユーザーに、提示されつつあるページのソースURLを提示することができる。表示されるURLは、ウェブサイトのフルパスを含むことができる。これは、ユーザーが、彼らがインストールを望むウェブサイトが正しいサイトから供給されつつあることを検証することを可能にすることができる。これは、悪意のあるサブディレクトリに関連する状況を軽減することができる。00119さまざまな実施態様では、デスクトップに統合されるウェブサイトのURLは、それが、それを含むウェブページと同一のドメインにあることを確認するためにチェックされる。そうではない場合には、エラーを表示することができ、動作をエラーにすることができる。ユーザーが動作を確認した後に、ダイアログを除去することができ、ウェブアプリケーションウィンドウを、正しいURLを用いて表示することができる。00120図20は、1つまたは複数の実施形態によるインストール方法のステップを説明する流れ図である。この方法を、任意の適切なハードウェア、ソフトウェア、ファームウェア、またはその組合せによって実行することができる。少なくともいくつかの実施形態では、この方法の諸態様は、クライアント上で実行されるソフトウェアによって実行される。00121ステップ2000では、統合リンクと共にウェブページを表示する。このステップを、任意の適切な形で実行することができ、その例は、上で提供される。ステップ2002では、統合リンクの選択を受け取る。ステップ2004では、リンク選択の受取に応答してウェブアプリケーションファイルを作成する。図示され説明される実施形態では、当初に作成されるウェブアプリケーションファイルは、ジャンプリストタスク、開始URL、お気に入りアイコン、および類似物などの関連するウェブサイトからの情報をまだ含まないアーティファクトまたはシェルである。これらを、上で説明されたように新しいマークアップおよび/またはJavaScript登録商標APIを介して後に追加することができる。その代わりにまたはそれに加えて、上で述べられるように、ウェブアプリケーションファイルは、関連するウェブアプリケーションが起動される少なくともいくつかのモード1つまたは複数を指定する情報を含むことができる。JavaScript登録商標APIを使用するもの以外の技法を、請求される主題の趣旨および範囲から逸脱せずに利用できることを了解し、理解されたい。00122さまざまなウェブアプリケーション統合技法を検討したので、これから、ウェブアプリケーションモードをどのようにして手動で構成できるのかの議論を検討されたい。ウェブアプリケーションモードの手動構成00123上で説明したように、ウェブアプリケーションインストール中に.websiteファイルに追加された情報を介してなど、1つまたは複数の特定のモード1つまたは複数で実行されるように、ウェブアプリケーションを自動的に構成することができる。しかし、時々、ユーザーが、ウェブアプリケーションが実行されるモードを変更することを望む場合がある。いくつかの実施形態では、ウェブアプリケーションのモードを、手動で構成し、さらに、ウェブアプリケーションが起動される時に適用することができる。00124たとえば、.websiteファイルに関連するプロパティダイアログタブ2100を示す図21を検討されたい。プロパティダイアログタブ2100は、.websiteファイル内で記述されるIn-Privateインプライベートブラウジングモードに対応するチェックボックス2102と、やはり.websiteファイル内で記述され得るブラウザーコントロールを表示するモードに対応するチェックボックス2104とを含む。In-Privateブラウジングモードは、ウェブアプリケーションが、非永続セッションモードが有効または無効のどちらにされて起動されるのかに対応することができ、ブラウザーコントロールを表示するモードは、ブラウザーのクロム上に表示される追加のナビゲーション特徴および/または伝統的特徴など、関連するウェブアプリケーションの追加のコントロール特徴が有効または無効のどちらにされるのかを統制することができる。図21では、チェックボックス2101および2104のそれぞれが、In-Privateモードとブラウザーコントロールを表示するモードとの両方が有効にされていることを示す、それぞれのボックスの内部のチェックマークを含む。チェックボックス2102の状態たとえば、選択済みまたは選択解除をトグルすることによって、ユーザーは、In-Privateブラウジングモードが有効または無効のどちらにされるのかを手動で構成することができる。同様に、チェックボックス2104の状態をトグルすることによって、ユーザーは、ブラウザーコントロールを表示するモードが有効または無効のどちらにされるのかを手動で構成することができる。たとえば、チェックボックスをトグルすることによるなど、モードの状態が変化する時に、関連する.websiteファイルを更新して、現在望まれている状態を反映することができる。その代わりにまたはそれに加えて、ユーザーが適用ボタン2106および/またはOKボタン2108を押す時に、.websiteファイルを更新することができる。いくつかのモード変化は、動的に変更されるようには構成されない。いくつかの実施形態では、これらの変化は、関連する.websiteファイル内で更新されるが、開かれているウェブアプリケーションのいずれにも適用されない。そうではなく、更新された.websiteファイル情報を、ウェブアプリケーションが起動される時にそのウェブアプリケーションに適用することができ、したがって、ユーザーが、後に実行するウェブアプリケーション1つまたは複数を手動で構成することが可能になる。00125さまざまなウェブアプリケーション統合技法を検討したので、これから、上で説明された実施形態のうちの1つまたは複数を実施するのに利用できる例示的なシステムを検討されたい。例示的なシステム00126図22に、上で説明されたさまざまな実施形態を実施するのに使用できる例示的なコンピューティングデバイス2200を示す。コンピューティングデバイス2200は、たとえば、図1のコンピューティングデバイス102または任意の他の適切なコンピューティングデバイスとすることができる。00127コンピューティングデバイス2200は、1つまたは複数のプロセッサーまたは処理ユニット2202、1つまたは複数のメモリおよび/またはストレージコンポーネント2204、1つまたは複数の入出力I/Oデバイス2206、ならびにさまざまなコンポーネントおよびデバイスがお互いと通信することを可能にするバス2208を含む。バス2208は、メモリバスまたはメモリコントローラ、周辺バス、acceleratedgraphicsport、およびさまざまなバスアーキテクチャのいずれかを使用するプロセッサーバスまたはローカルバスを含む、複数のタイプのバス構造のいずれかのうちの1つまたは複数を表す。バス2208は、有線バスおよび/または無線バスを含むことができる。00128メモリ/ストレージコンポーネント2204は、1つまたは複数のコンピューター記憶媒体を表す。コンポーネント2204は、揮発性媒体ランダムアクセスメモリRAMなどおよび/または不揮発性媒体読取専用メモリROM、フラッシュメモリ、光ディスク、磁気ディスク、その他などを含むことができる。コンポーネント2204は、固定媒体たとえば、RAM、ROM、固定ハードドライブなどならびにリムーバブル媒体たとえば、フラッシュメモリドライブ、リムーバブルハードドライブ、光ディスクなどを含むことができる。001291つまたは複数の入出力デバイス2206は、ユーザーが、コンピューティングデバイス2200にコマンドおよび情報を入力することを可能にし、また、情報をユーザーおよび/または他のコンポーネントもしくはデバイスに提示することを可能にする。入力デバイスの例は、キーボード、カーソル制御デバイスたとえば、マウス、マイクロホン、スキャナなどを含む。出力デバイスの例は、ディスプレイデバイスたとえば、モニタまたはプロジェクタ、スピーカ、プリンタ、ネットワークカードなどを含む。00130さまざまな技法が、本明細書でソフトウェアまたはプログラムモジュールの全般的文脈で説明される場合がある。一般に、ソフトウェアは、特定のタスクを実行するか特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。これらのモジュールおよび技法の実施態様を、ある形のコンピューター可読媒体上に格納し、またはこれを介して伝送することができる。コンピューター可読媒体を、コンピューティングデバイスによってアクセスできる1つまたは複数の任意の使用可能な媒体とすることができる。限定ではなく例として、コンピューター可読媒体は、コンピューター可読記憶媒体を含むことができる。00131コンピューター可読記憶媒体は、コンピューター可読命令、データ構造、プログラムモジュール、または他のデータなどの情報のストレージの任意の方法または技術で実施された、揮発性および不揮発性の、リムーバブルまたはノンリムーバブルの媒体を含む。コンピューター可読記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリ、もしくは他のメモリ技術、CD-ROM、ディジタル多用途ディスクDVD、もしくは他の光学ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、もしくは他の磁気ストレージデバイス、または所望の情報を格納するのに使用でき、コンピューターによってアクセスできる任意の他の媒体を含むが、これに限定されない。結論00132さまざまな実施形態は、エンドユーザーがウェブアプリケーションおよびウェブサイトを彼らのデスクトップにインストールすることを可能にする機構を提供する。1つまたは複数の実施形態によれば、クライアントサイドコードを利用して、ウェブサイトに関連する開発者が、ユーザー対話に関連する境界を定義することを可能にし、これらの境界をランタイムエンジンによって実施させることができる。少なくともいくつかの実施形態では、開発者は、JavaScript登録商標コードを介して、スタートメニューショートカットの作成、ナビゲーション、およびいわゆるジャンプリスト統合、ならびにさまざまな他の機能性に関するさまざまな構成を提供することができる。00133いくつかの実施形態では、非永続セッションモードなど、少なくとも1つの特定のモードで実行するように、ウェブアプリケーションを構成することができる。少なくともいくつかの実施形態では、ウェブアプリケーションの少なくとも1つのモードを、インストール中に自動的に構成することができる。その代わりにまたはそれに加えて、ウェブアプリケーションの少なくとも1つのモードを、手動で構成することができる。00134主題を、構造的特徴および/または方法論的行為に固有の言葉で説明したが、添付の特許請求の範囲で定義される主題が、必ずしも上で説明された特定の特徴または行為に限定されないことを理解されたい。そうではなく、上で説明された特定の特徴および行為は、特許請求の範囲を実施する例の形として開示されるものである。