(57)【要約】【課題】開示されている種々の実施の形態は、一般的に、ハンドヘルド装置に挿入される取り外し可能な記憶装置上に存在する、マルチメディア等のリッチコンテンツデータを管理及び表示するための装置及び方法に向けられている。【解決手段】本発明の１つの側面では、方法は、記憶装置がハンドヘルド装置に挿入された後直ちに、リッチコンテンツデータを起動及び表示し、そして、リッチコンテンツデータが起動及び表示された回数を監視する。リッチコンテンツデータが所定回数起動された場合には、リッチコンテンツデータは、ハンドヘルド装置から削除される。【選択図】図２ａ
2007501453.tif 000002
【特許請求の範囲】
【請求項１】
ハンドヘルド装置に挿入された取り外し可能な記憶装置に存在するリッチコンテンツデータを管理するための方法であって、
ハンドヘルド装置内に存在する記憶回路内にプログラムされるカウンタを有している、少なくとも一つのコンテンツクッキーを検索し、
少なくとも一つのコンテンツクッキーを検索する時にコンテンツクッキーが見つからなかった場合には、カウンタを有している少なくとも一つのコンテンツクッキーを、取り外し可能な記憶装置からハンドヘルド装置にインストールし、
コンテンツプレーヤーを起動し、
コンテンツプレーヤーを介して、ハンドヘルド装置内でリッチコンテンツデータを提供し、
少なくとも一つのコンテンツクッキーのカウンタをデクリメントする。
【請求項２】
請求項１の方法であって、リッチコンテンツデータは、マルチメディアデータである。
【請求項３】
請求項１の方法であって、リッチコンテンツデータは、少なくとも一つのグラフイメージである。
【請求項４】
請求項１の方法であって、リッチコンテンツデータは、音声ファイルである。
【請求項５】
請求項１の方法であって、ハンドヘルド装置は表示スクリーンを有しており、方法は、さらに、スクリーンにリッチコンテンツデータ表示するステップを有している。
【請求項６】
請求項１の方法であって、取り外し可能な記憶装置は、メモリスティックである。
【請求項７】
請求項１の方法であって、取り外し可能な記憶装置は、ソリッドステート記憶装置である。
【請求項８】
請求項１の方法であって、取り外し可能な記憶装置は、マイクロメカニカルドライブである。
【請求項９】
請求項１の方法であって、少なくとも一つのコンテンツクッキーのカウンタが最大値に達した場合には、方法は、さらに、ハンドヘルド装置からリッチコンテンツデータを除去する。
【請求項１０】
請求項１の方法であって、少なくとも一つのコンテンツクッキーのカウンタが最大値に達した場合には、方法は、さらに、取り外し可能な記憶装置からリッチコンテンツデータを除去する。
【請求項１１】
プロセッサによって実行された時に、前記プロセッサに、取り外し可能な記憶装置がハンドヘルド装置に挿入された後直ちに、ハンドヘルド装置内で取り外し可能な記憶装置上に存在するリッチコンテンツデータを再生するための処理を実行させる一連の指示を有するコンピュータ使用可能な媒体を含んでいるコンピュータプログラムプロダクトであって、前記処理は、
ハンドヘルド装置内に存在する記憶回路内にプログラムされるカウンタを有している、少なくとも一つのコンテンツクッキーを検索し、
少なくとも一つのコンテンツクッキーを検索する時に、コンテンツクッキーが見つからなかった場合には、カウンタを有している少なくとも一つのコンテンツクッキーをハンドヘルド装置にインストールし、
コンテンツプレーヤーを起動し、
コンテンツプレーヤーを介してハンドヘルド装置内でリッチコンテンツデータを提供し、
少なくとも一つのコンテンツクッキーのカウンタをデクリメントする。
【請求項１２】
請求項１１のコンピュータプログラムプロダクトであって、リッチコンテンツデータは、マルチメディアデータである。
【請求項１３】
請求項１１のコンピュータプログラムプロダクトであって、リッチコンテンツデータは、少なくとも一つのグラフイメージである。
【請求項１４】
請求項１１のコンピュータプログラムプロダクトであって、リッチコンテンツデータは、音声ファイルである。
【請求項１５】
請求項１１のコンピュータプログラムプロダクトであって、ハンドヘルド装置は、表示スクリーンを有しており、方法は、さらに、リッチコンテンツデータをスクリーン上に表示するステップを有している。
【請求項１６】
請求項１１のコンピュータプログラムプロダクトであって、取り外し可能な記憶装置は、メモリスティックである。
【請求項１７】
請求項１１のコンピュータプログラムプロダクトであって、取り外し可能な記憶装置は、ソリッドステートメモリカードである。
【請求項１８】
請求項１１のコンピュータプログラムプロダクトであって、取り外し可能な記憶装置は、マイクロメカニカルドライブである。
【請求項１９】
請求項１１のコンピュータプログラムプロダクトであって、少なくとも一つのコンテンツクッキーのカウンタが最大値に達した場合には、方法は、さらに、ハンドヘルド装置からリッチコンテンツデータを除去する。
【請求項２０】
請求項１１のコンピュータプログラムプロダクトであって、少なくとも一つのコンテンツクッキーのカウンタが最大値に達した場合には、方法は、さらに、取り外し可能な記憶装置からリッチコンテンツデータを除去する。
【発明の詳細な説明】
【発明の分野】
【０００１】
本明細書に記載されている種々の実施の形態は、携帯可能なコンピュータ及び無線装置に関し、より詳しくは、取り外し可能な記憶装置からアクセスされる、前記装置上のマルチメディア及びリッチコンテンツデータ(content  rich  data)を管理及び提供するためのシステム及び方法に関する。
【発明の背景】
【０００２】
ウィンドウズ（登録商標）モービル(Windows（登録商標）  Mobile)あるいはパーム(Palm)等の携帯可能／ハンドヘルド（片手で持てる程度の大きさの）コンピュータ装置や、携帯電話機等の無線装置の普及により、このような装置でのコンテンツ、例えば、ビデオゲーム、音楽ファイル、ビデオクリップ、スケジューリングソフトウェア、イーメールソフトウェア等に対する要望が高まっている。
【０００３】
このようなコンテンツをこのような装置にロードするための一つの一般的な方法は、ソリッドステートメモリカード（半導体メモリカード）、例えば、小さな、薄い、取り外し可能な、低電力のデータ蓄積装置である、セキュアデジタルカード(Secure  Digital  Card)（“ＳＤ”）、マルチメディアカード（Multi-Media  Card）（“ＭＭＣ”）、コンパクトフラッシュ（登録商標）メモリカード等のメモリカード、あるいはメモリスティック等の取り外し可能な記憶装置を用いる方法である。取り外し可能な記憶装置の他の例は、マイクロメカニカル部品、例えば、サーボを有している、日立製作所のマイクロドライブ等のマイクロドライブである。
【０００４】
取り外し可能な記憶装置は、ハンドヘルド装置に挿入可能である。これによって、ハンドヘルド装置は、記憶装置からデータを読み取り可能であり、また、ソフトウェアを記憶装置からハンドヘルド装置自身の記憶回路にインストールしあるいはプログラムを記憶装置から起動することができる。いくつかのケースでは、取り外し可能な記憶装置上に存在する、グラフイメージあるいはマルチメディアファイル等のリッチコンテンツデータを自動的に起動し、そして、記憶装置がハンドヘルド装置に挿入された後のいつかに、ハンドヘルド装置のスクリーン上にリッチコンテンツデータを表示するのが好ましい。例えば、動画の形態で広告を取り外し可能な記憶装置上に記憶し、そして、取り外し可能な記憶装置がハンドヘルド装置に挿入された後、ハンドヘルド装置のスクリーン上に広告を表示するのが好ましい。しかしながら、ユーザは、取り外し可能な装置が挿入される毎にそのような広告が表示されることに対して苛立ちを感じる可能性がある。このため、このようなコンテンツを管理するのが好ましい。
【０００５】
したがって、取り外し可能な記憶装置からのリッチコンテンツデータを管理し、また、見るためのシステム及び方法が要望されている。
【発明の概要】
【０００６】
本明細書に開示されている種々の実施の形態は、一般的に、ハンドヘルド装置に挿入される取り外し可能な記憶装置上に存在するリッチコンテンツデータを管理及び表示するためのシステム及び方法に向けられている。本明細書に開示されている種々の実施の形態の１つの側面では、処理は、取り外し可能な記憶装置がハンドヘルド装置に挿入された後直ちにリッチコンテンツデータを起動及び表示し、そして、リッチコンテンツデータが起動及び表示された回数を監視することにより構成されている。リッチコンテンツデータが所定回数起動された場合には、リッチコンテンツデータは、ハンドヘルド装置から削除される。
【０００７】
本明細書に開示されている種々の実施の形態の前述した及び他の利点や目的がどのように得られるかをよりよく認識するために、より特別な記述が、添付の図面に示されている特別の実施の形態を参照してなされている。これらの図面は、典型的な実施の形態のみを描写しており、本明細書に開示されている本発明の種々の実施の形態の概念を制限するものとして考慮されないことを理解する。これらの特別な実施の形態は、添付図面を用いてさら詳細に開示及び説明されている。
【好ましい実施の形態の詳細な説明】
【０００８】
図１を参照すると、前述したように、多くの場合、音声、グラフ及びマルチメディアデータ等のリッチコンテンツデータ６を、限定されないが、マイクロメカニカルドライブ、メモリスティック、ソリッドステートメモリカード、例えば、ＳＤ、ＭＭＣあるいはコンパクトフラッシュ（登録商標）カード、１回だけプログラム可能な（“ＯＴＰ”）カード、３Ｄ半導体記憶装置、ナノ磁気コア記憶装置、有機及び無機分子蓄積媒体、量子効果蓄積装置等の１あるいは多くの取り外し可能な記憶装置４に記憶させるのが好ましい。
【０００９】
記憶装置４が、ウィンドウズ（登録商標）モービル、パームあるいは携帯電話等のハンドヘルド装置２に挿入された後のいつかに、リッチコンテンツデータ６は、起動され、ハンドヘルド装置２内で提供される。例えば、グラフィックな帯状の交告、ニュース放送、音楽及び／または映像を、取り外し可能な記憶装置４に記憶させ、そして、記憶装置４がハンドヘルド装置２に挿入された後直ちに、帯状の広告、放送、音楽及び／または映像が起動し、そして、装置内で提供、再生あるいは表示されるのが好ましい。コンテンツ６は、装置４上にロックされる。例えば、フラッシュあるいはＲＯＭカードのいずれかに対して、コンテンツ６は、消去あるいは処理されないようにロックされる。フラッシュカードでは、これはオプションとして設けられるが、ＲＯＭカードでは、これは設けられるのみである。
【００１０】
取り外し可能な記憶装置４上に存在するリッチコンテンツデータを管理及び起動するための一つの接近法が、図２ａ及び２ｂのフローチャートに示されている。図２ａを参照すると、一つあるいは多くのリッチコンテンツデータファイル６を有している、取り外し可能な記憶装置４は、先ず、ハンドヘルド装置２に挿入される（実行ブロック１００）。一般的には、記憶装置４が特別のハンドヘルド電子装置２に挿入されると、装置２は、自動的に特別のディレクトリを探す。例えば、ハンドヘルド装置２がＡＲＭ７２０中央処理ユニット（“ＣＰＵ”）とウィンドウズ（登録商標）モービルオペレーティングシステム（“ＯＳ”）を有している場合には、装置２は、自動的に“１８２４”というラベルが付けられているディレクトリを探す。さらに、装置２は、一般的には、プログラムあるいはデータファイル（データを含んでいるファイル）である特別のファイルを探す。装置２がプログラムを探し、そして、そのプログラムが存在する場合には、装置は、プログラムを実行しあるいは作動させる。装置２がデータファイルを探し、そして、そのファイルが存在する場合には、装置は、特別なプログラムの起動あるいはインストールを指示するためにデータファイルを読み出す。たとえば、装置が、ＡＲＭ７２０ＣＰＵとウィンドウズ（登録商標）モービルＯＳを有している場合には、ＯＳは、“１８２４”と呼ばれるディレクトリを探し、そして、そのディレクトリ内で、装置は、“autorun.exe”１０と呼ばれるプログラムを探して実行する。
【００１１】
Autorun.exe１０のフレームワークあるいはシェルは、マイクロソフトによって提供され、［ｈｔｔｐ：／／ｍｓｄｎ．ｍｉｃｒｏｓｏｆｔ．ｃｏｍ／ｌｉｂｒａｒｙ／ｄｅｆａｕｌｔ．ａｓｐ？ｕｒｌ＝／ｌｉｂｒａｒｙ／ｅｎｕｓ／ｗｃｅｓｅｔｕｐ／ｈｔｍ／＿ｗｃｅｓｄｋ＿ｕｓｉｎｇ＿ａｕｔｏｒｕｎ＿ｏｎ＿ｔｈｅ＿ｐｏｃｋｅｔ＿ｐｃ．ａｓｐ．］で見つけることができる。フレームワークは、アプリケーションを自動的にインストールするためのソースコードを提供するだけであり、他のアプリケーションを起動するためのソースコードは提供しない。しかしながら、当業者には理解できるように、ソースコードが利用可能であるため、プログラマは、コードをエンハンス（強化）し、新しい特徴を追加することができる。
【００１２】
Autorun.exe１０が起動されると（実行ブロック２００）、autorun.exe１０が開始した後（実行ブロック３００）、記憶装置４上の特別なリッチコンテンツデータファイル６に関連する、装置２上の特別なコンテンツクッキーを探すために、autorun.exe１０にコードが追加される（実行ブロック４００）。“クッキー”は、ハンドヘルド装置等の、一つあるいは多くのプログラムまたはデータファイルとのユーザのインタラクション（相互作用）、他のものの間のユーザのインタラクションを記録するようにプログラム可能なコンピュータ装置上に存在する、一般的なファイルである。クッキーは、しばしば、小さいサイズであり、典型的には、装置上で起動されたプログラム、これらのプログラムが起動された回数、ユーザがどのようにプログラムとインタラクション（相互作用）したか、例えば、ユーザがプログラム内でハイパーリンクをクリックしたか否か等の情報を含んでいる。一般的には、記憶装置４上の少なくとも一つのリッチコンテンツデータファイル６と関連する少なくとも一つのクッキーが存在する。
【００１３】
関連するクッキーが見つからなかった場合（決定ブロック５００）には、autorun.exe１０は、ハンドヘルド装置２に関連するクッキーをインストールし、そして、クッキー内のカウンタを特別な値「ｎ」にプリセットする（実行フロック６００）。カウンタは、特別なリッチコンテンツデータファイル６を何回見ることができるか、また、起動された回数を示す。
【００１４】
関連するクッキーが見つかった場合（決定ブロック５００）には、autorun.exe１０は、クッキー内のカウンタを探し、値を決定する。カウンタの値が「０」である場合（決定ブロック７００）には、リッチコンテンツデータが、特別な装置２で最大回数表示され、再度表示されないことを意味している。この制限の目的は、ハンドヘルド装置２のユーザにフラストレーションを与えないためである。
処理は、そこで終了するか、あるいは、代わりに、autorun.exe１０は、リッチコンテンツデータ６を見るために装置２にビューワープログラムが存在するかを調査する。存在する場合（決定ブロック９００）には、autorun.exe１０は、リッチコンテンツデータ６が装置２でこれ以上起動されないため、ビューワープログラムを除去する（実行ブロック８００）。その後、処理は終了する（ストップブロック１１００）。ビューワープログラムが装置２上で見つからなかった場合（決定ブロック９００）には、処理は終了する（ストップブロック１１００）。
【００１５】
カウンタの値が「０」でない場合（決定ブロック７００）、あるいは、関連するクッキーがインストールされたばかりの場合（実行ブロック６００）には、その後、autorun.exe１０は、ＭＰＥＧコンテンツファイルやウィンドウズ（登録商標）メディアコンテンツファイルを再生可能なメディアビューワー等の、リッチコンテンツデータ６を提供する、装置２上のプログラムを探す（実行ブロック７５０）。リッチコンテンツデータビューワーの一例が、以下に記載されている。
ビューワーが装置２で見つからなかった場合（決定ブロック８５０）には、autorun.exe１０は、適切なビューワーを装置２にインストールする（実行ブロック９５０）。そして、autorun.exe１０は、ビューワーを起動する（実行ブロック１２００）。
ビューワーが装置２で見つかった場合（決定ブロック８５０）には、autorun.exe１０は、ビューワーを起動し（実行ブロック１２００）、映像、音声、テキスト及び／あるいはグラフデータであるリッチコンテンツデータ６をハンドヘルド装置２に表示する。
【００１６】
図２ｂを参照すると、autorun.exe１０は、コンテンツ６の提供が完了したか否かを判断するために検査する（決定ブロック１３００）。完了していない場合には、処理は継続される。提供が完了した場合には、関連するクッキーのカウンタの値がデクリメント（減少）される。そして、関連するクッキーの情報、例えば、ユーザがリッチコンテンツデータ６とインタラクションしたか否か、インタラクションした場合には、どのようなインタラクションが行われたか、例えば、ユーザが、表示されるリッチコンテンツデータ６内でハイパーリンクをクリック（すなわち、選択）したか否か等がアップデートされる（実行ブロック１４００）。
カウンタがデクリメントされた後、カウンタがまだ「０」でない場合（決定ブロック１５００）には、処理は終了し（ストップブロック１６００）、そして、残りの動作が継続される。次回、記憶装置がハンドヘルド装置２に挿入されると、コンテンツ６は、再度表示される。
カウンタが「０」に達した場合（決定ブロック１５００）には、リッチコンテンツデータが起動及び表示された回数が制限回数に達したので、リッチコンテンツデータは、ハンドヘルド装置２から除去される（実行ブロック１７００）。その後、autorun.exe１０は、リッチコンテンツデータを記憶装置４から削除し（実行ブロック１８００）あるいは処理を終了する（ストップブロック１６００）。コンテンツ６が記憶装置４から除去される場合（決定ブロック１８００）には、コンテンツ６、ビューワー及び／またはautorun.exeは、記憶装置４から削除され（実行ブロック１９００）、そして、処理は終了する（ストップブロック１９５０）。
この実施の形態では、カウンタは、値「ｎ」から「０」までデクリメントされる。代わりに、カウンタは、「０」から開始し、値「ｎ」に達するまでインクリメントしてもよい。値「ｎ」は、任意の値に設定可能である。カウンタは、ハンドヘルド装置２に固有であってもよい。この場合、値「ｎ」が「１」に設定されると、記憶装置上のコンテンツ６は、記憶装置が挿入される各ハンドヘルド装置２毎に一回だけ表示される。
【００１７】
リッチコンテンツデータ６を記憶装置４に表示するために用いられるコンテンツビューワープログラムは、アップルコンピュータのクイックタイムメディアプレーヤー、マイクロソフトのウィンドウズ（登録商標）メディアプレーヤー、リアルアオーディオのリアルプレーヤーあるいはＨＴＭＬブラウザ等の、商業的に入手可能なビューワーであってもよい。勿論、本明細書の開示は、本明細書の教示が任意のビューワーに適用可能であるため、特別な形式のビューワーに制限されない。さらに、コンテンツビューワー２０は、以下に説明され、また、図３のフローチャートで示されている実施の形態に対応している。
【００１８】
コンテンツビューワープログラム２０が開始した後（スタートブロック２０００）、プログラム２０は、起動して、リッチコンテンツデータ６を表示する（実行ブロック２１００）。これは、リッチコンテンツデータ６の絶えることがない提示である。
そして、プログラム２０は、ハンドヘルド装置２がイネーブルされたネットワークであるか否かを決定する（決定ブロック２２００）。すなわち、装置２が、無線あるいはローカルエリアネットワーク（“ＬＡＮ”）のいずれか介してネットワークにアクセス可能であるか否かを決定する。アクセス可能でない場合には、プログラム２０は、コンテンツ６を表示した後終了する（ストップブロック２２５０）。
アクセス可能である場合には、プログラム２０は、コンテンツ６がネットワークを介してデータを送信あるいは受信するように、ユーザがコンテンツ６とインタラクション（相互作用）したか否か、例えば、データをインターネットに送信しあるいはインターネットから受信するハイパーリンクをユーザがクリックしたか否かを決定する（決定ブロック２３００）。インタラクションしていない場合には、プログラム２０は終了する（ストップブロック２３５０）。
インタラクションした場合には、プログラム２０は、ハンドヘルド装置２あるいは記憶装置４に設けられているウェブブラウザを起動し、ユーザが選択したウェブサイトへのリンクを作動させる（実行ブロック２４００）。そして、プログラム２０は、ユーザのインタラクションを記録し、装置２に設けられている関連するクッキー内に情報を蓄積する（実行ブロック２５００）。
【００１９】
プログラム２０は、選択されたウェブサイトが、関連するクッキーを要求したか否かを決定する（決定ブロック２６００）。要求していない場合には、プログラム２０は終了する（ストップブロック２５５０）。要求した場合には、プログラム２０は、関連するクッキーをサイトにアップロードし（実行ブロック２７００）、その後プログラムは終了する（ストップブロック２８００）。
クッキーをサイトにアップロードする（実行ブロック２７００）の目的は、リッチコンテンツデータとのユーザのインタラクションの分析を提供するためである。クッキー情報は、再調査のためにサーバに送信される。この情報は、誰がリッチコンテンツデータ６を見ているか、どのような種類の装置２が用いられているか、どのような種類の記憶装置４が用いられているか、何回かを決定するために分析される。
【００２０】
記憶装置４は、一種類以上のハンドヘルド装置２のためのリッチコンテンツデータを含んでいる。例えば、記憶装置４は、パームのハンドヘルドコンピュータ環境及びウィンドウズ（登録商標）モービルのハンドヘルドコンピュータ環境のためのリッチコンテンツデータを含んでいる。各種類の装置は、autorun.exe等の、自身の“自動起動(auto  launch)”プログラムを有している。複数のハンドヘルド装置のサポートを可能にするためのシステム及び方法は、“携帯可能な電子装置のためのユニバーサルローダ”という名称で、２００３年２月２７日に出願された米国特許出願第１０／３７７０９３号に開示されている。この出願の内容は、全て参照として本明細書中に含まれている。
【００２１】
図４ａ、４ｂ及び４ｃを参照すると、複数のハンドヘルド装置２に対するサポートを可能とするautorun.exeの実行に関する詳細なフローチャートが示されている。この実行は、前述した実行に加えて、autorun.exeに追加される。ソフトウェア及び／またはリッチコンテンツデータ６を有している記憶装置４が、ウィンドウズ（登録商標）モービルＯＳを有している装置に挿入されると、装置は、対応するディレクトリを探し、そして、対応するディレクトリ内でautorun.exeを探す。見つけた場合には、装置は、autorun.exeを起動する（エンターブロック３０００）。
“Autorun.exe”は、先ず、“アンインストール(uninstall)”引数が通過したか否かを判断するために検査する（決定ブロック３１００）。通過した場合には、記憶装置が装置から取り外されたことが示され、autorun.exeは、“リセットフラグ”をクリアする（実行ブロック３１５０）。リセットフラグは、autorun.exeがソフトウェアを記憶装置にインストールすべきか否かを示す。autorun.exeが、ソフトウェアをインストールしないように指示されている場合には、記憶装置が使用可能でないか、あるいは、ソフトウェアがすでにインストールされているからである。
その後、autorun.exeは、“ソフトリセット(soft-reset)”を実行する。すなわち、ポケットパソコン装置をリブート（再起動）し（実行ブロック３２６０）、その後、装置の記憶回路からファイルを除去することなく、自己を終了する（実行ブロック４６００）。
【００２２】
決定ブロック３１００に戻り、アンインストール引数が通過しなかった場合には、記憶装置がまだ装置内に挿入されていることを示している。そして、autorun.exeは、リセットフラグがセットされているか否かを検査する（決定ブロック３２００）。
セットされていない場合には、autorun.exeは、リセットフラグをセットし（実行ブロック３２５０）、ソフトリセットを実行し（実行ブロック３２６０）、そして、自身を終了する（実行ブロック４６００）。
リセットフラグがセットされている場合（決定ブロック３２００）には、autorun.exeは、装置の記憶回路内の第１トップレベルのディレクトリあるいはファイル名を探す（実行ブロック３３００）。
有効なディレクトリあるいはファイル名が見つからなかった場合（決定ブロック３４００）には、autorun.exeは、インストール処理が準備される方法や、autorun.exeがプログラム及び構成される方法に依存して、記憶装置の特別なアプリケーションへのパス（通路）を構築するために、トップレベルの一時的なディレクトリ名を使用するか、あるいは、装置の記憶回路内にすでに存在する特別なアプリケーションへのパスを構築する（実行ブロック４３００）。
その後、autorun.exeは、特別なアプリケーションを、装置の記憶回路あるいは記憶装置のいずれかから起動する（実行ブロック４４００）。うまく起動した場合（決定ブロック４５００）には、autorun.exeは、リセットフラグをクリアする（実行ブロック４５６０）。これは、装置の電源が遮断された後に記憶装置が装置から取り外す場合に必要となる。その後、autorun.exeは、自身を閉じあるいは自身を終了する（ストップブロック４６００）。うまく起動できなかった場合には、autorun.exeは、ユーザに失敗を通知する。例えば、装置の表示装置に現れるグラフ窓を介して知らせる。
【００２３】
決定ブロック３４００に戻り、有効なディレクトリあるいはファイル名が見つかった場合には、autorun.exeは、ディレクトリが一時的なディレクトリであるか否か、例えば、取り外し可能なフラッシュ、ＲＯＭあるいはマイクロドライブメモリカード上に設けられているディレクトリであるか否かを検査する（決定ブロック３５００）。
一時的なディレクトリである場合には、プログラムは、組み込み記憶装置、例えば、埋め込まれたフラッシュメモリであるか否かを検査する（決定ブロック３５５０）。組み込み記憶装置でない場合には、ディレクトリ名が、後での使用のために蓄積される（実行ブロック３５６０）。そして、autorun.exeは、次のトップレベルのディレクトリあるいはファイル名を探す（実行ブロック３６００）。
一時的なディレクトリが組み込み記憶装置である場合には、autorun.exeは、スキップし、次のトップレベルのディレクトリあるいはファイル名を探す（実行ブロック３６００）。
決定ブロック３５００に戻り、見つけた有効なディレクトリあるいはファイル名が一時的なディレクトリでない場合には、autorun.exeは、次のトップレベルのディレクトリあるいはファイル名を探す（実行ブロック３６００）。
１つを見つけた場合（決定ブロック３７００）には、autorun.exeは、それが一時的なディレクトリであるか否かを決定するために、決定ブロック３５００に戻る。
autorun.exeが次のトップレベルのディレクトリあるいはファイル名を見つけない場合（決定ブロック３７００）には、有効なディレクトリが実際に存在しているか否かを確認するために検査する（決定ブロック３８００）。存在しない場合には、問題があり、例えば、装置が挿入されていないため、自身を終了する（ストップブロック４６００）。
【００２４】
有効なディレクトリが存在する場合（決定ブロック３８００）には、autorun.exeは、現在のプロセッサの形式を決定し、そして、autorun.exeを開始させる記憶装置あるいは他の記憶装置のいずれか、または、装置の記憶回路内のいずれかに存在する、有効なディレクトリへのパス（通路）を構築する（実行ブロック３９００）。
次に、プログラムは、対応するサブディレクトリ、例えば、挿入される装置に対応するautorun.exeを起動する、記憶装置上のサブディレクトリから、第１の“＊.cab”ファイル名を取得する（実行ブロック４０００）。例えば、記憶装置が挿入されている装置が、Ｓｔｒｏｎｇ  Ａｒｍ  ＳＡ１１ＸＸ  ＣＰＵを有している場合には、“２５７７”というラベルが付けられたサブディレクトリから取得する。
“＊.cab”ファイルが見つからない場合（決定ブロック４１００）には、プログラムがすでにインストールされているか、あるいは、インストールする“＊.cab”ファイルが存在しない可能性があるため、プログラムは、アプリケーションの起動を試みる。プログラムは、実行ブロック４３００に進む。すなわち、プログラムは、インストール処理が準備される方法やautorun.exeがプログラム及び構成される方法に依存して、記憶装置上の特別なアプリケーションへのパスを構築するためにトップレベルの一時的なディレクトリ名を使用するか、あるいは、装置の記憶回路内にすでに存在する特別なアプリケーションへのパスを構築する。
“＊.cab”ファイルを見つけた場合（実行ブロック４１００）には、プログラムは、“＊.cab”ファイルのコンテンツが、装置の記憶回路にすでにインストールされているか否かを検査する（決定ブロック４２００）。インストールされていない場合には、“＊.cab”ファイルのコンテンツは、装置の記憶回路の、有効なディレクトリ内にインストールされる（実行ブロック４２５０）。インストールされている場合には、プログラムは、“＊.cab“ファイル内のコンテンツをインストールせずに、次の”＊.cab“ファイルを見つける処理を実行し（実行ブロック４２６０）、そして、決定ブロック４１００を繰り返す。
【００２５】
上記したatorun.exeに適用される原理は、自動的に、記憶装置からハンドヘルド電子装置内にソフトウェアをインストールしあるいはソフトウェアを実行するように設計されている、任意の実行可能なプログラムに等しく適用可能である。
【００２６】
前述したように、本明細書に開示されている種々の実施の形態は、一連の指示を構成するコンピュータプログラムの形態をとってもよい。取り外し可能なメモリ装置に加えて、これらの指示は、フロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープ、他の磁気媒体、ＣＤ−ＲＯＭ、他の光学媒体、パンチカード、紙テープ、ホールパターンを有する他の物理媒体、ＲＡＭ、ＲＯＭ、ＰＲＯＭ（すなわち、プログラム可能な読出専用メモリ）、フラッシュＥＰＲＯＭを含むＥＰＲＯＭ（すなわち、消去可能でプログラム可能な読出専用メモリ）、他のメモリチップあるいはカートリッジ、搬送波あるいは他の媒体等の他のコンピュータ使用可能な媒体に適用される。
【００２７】
特別な実施の形態が示され、説明されているが、好ましい実施の形態に対する開示に制限されないことが理解される。また、当業者にとって、種々の変更及び修正が、本明細書に開示されている主題の精神及び概念から逸脱しない範囲内で可能であることは明らかである。したがって、本明細書に開示されている主題は、請求項の精神及び概念の範囲内に含まれている、代替、修正及び均等を包含する。
【図面の簡単な説明】
【００２８】
【図１】ハンドヘルド装置及び取り外し可能な記憶装置を示す図である。
【図２ａ】例示的なリッチコンテンツデータサーバのフローチャートである。
【図２ｂ】図２ａのフローチャートの残りの部分である。
【図３】例示的なリッチコンテンツデータビューワーのフローチャートである。
【図４ａ】ユニバーサルローダのフローチャートである。
【図４ｂ】図４ａのフローチャートの続きである。
【図４ｃ】図４ａ及び図４ｂのフローチャートの残りの部分である。
【図１】
2007501453.tif 000003
【図２ａ】
2007501453.tif 000004
【図２ｂ】
2007501453.tif 000005
【図３】
2007501453.tif 000006
【図４ａ】
2007501453.tif 000007
【図４ｂ】
2007501453.tif 000008
【図４ｃ】
2007501453.tif 000009
【国際調査報告】
2007501453.tif 000010
2007501453.tif 000011
2007501453.tif 000012