豊田 孝

 本日は「最近使ったファイル」メニューの特性と,Windows XP RC1(以下Windows XP)の「スタート」メニューに新しく追加された「マイ ピクチャ」メニューを取り上げます。

自分自身を語らない「最近使ったファイル」メニュー・オブジェクト

 Windows XPの「スタート」メニューに含まれるほとんどのメニューは,右クリックすれば何らかの情報を返してきます。しかし「最近使ったファイル」メニューは何の情報も返しません。なぜでしょうか?さっそくこの背景を探ってみましょう。

 なお,これ以降の説明では,グラフィカル・ユーザーインタフェース(GUI)として表示される「最近使ったファイル」と,Windowsシステム内部に作成される「最近使ったファイル」を明確に区別し,前者を「最近使ったファイル」メニュー,後者を「最近使ったファイル」オブジェクトと呼ぶことにします。このため「最近使ったファイル」メニューと「最近使ったファイル」オブジェクトの間には,次のような関係が成立していると考えておいてください。

“「最近使ったファイル」メニューは,Windowsシステム内部に作成されている「最近使ったファイル」オブジェクトの情報を表示する役目を持つGUIである”

 まず最初に思い浮かぶのは,「最近使ったファイル」オブジェクトがWindowsシステム内部に作成されていないのではないか,という疑問です。すでに説明したように,「最近使ったファイル」メニューは「最近使ったファイル」オブジェクトに関する情報を表示する役目を持っています。このため,オブジェクトがなければ,メニューには何も表示されません。そこでまず,補助プログラムを使って,この疑問を解決することにします。

図1●補助プログラム「No3SilentRecentFile.exe」の実行結果
図2●「最近使ったファイル」のプロパティ
図3●「最近使ったファイル」プロパティの「カスタマイズ」タブ
図4●補助プログラム「No3RunRecentFiles.exe」の実行画面
図5●「マイ ピクチャ」メニュー
図6●「マイ ピクチャ」フォルダ
図7●「オンラインでのプリント注文」ウィザード
図8●“BMP”フォルダを作成する
図9●BMPフォルダのプロパティを設定する
図10●BMPフォルダにWebサービス機能が追加される
 本日用意した最初の補助プログラム「No3SilentRecentFile.exe」(ダウンロードはこちら)を私のWindows XP環境で実行すると,図1[拡大表示]のような情報が表示されます。

 ご覧のように情報がきちんと返されていますから,「最近使ったファイル」オブジェクトはシステム内に間違いなく作成されています。これで最初の疑問は解決しました。

 次に思い浮かぶ疑いは,「最近使ったファイル」オブジェクトは特別な意味を持つオブジェクトなのではないか,ということです。図1を見る限り,「最近使ったファイル」オブジェクトは,通常のファイル・フォルダをオブジェクト化したものにすぎないことが分かると思います。もし特殊なフォルダなら,“システム”フォルダという文字列が返されてくるはずです。このため,「最近使ったファイル」オブジェクトは通常のファイル・フォルダと考えられますから,普通のフォルダのように開くことができ,内部に格納されている個々のファイル・オブジェクトを直接操作できることを意味します。少なくとも論理的にはこのような解釈が成立します。ここで念のために,「最近使ったファイル」オブジェクトのプロパティを確認しておきましょう。上の画面で「プロパティ」を選択して,OKボタンをクリックすると,図2[拡大表示]の画面が表示されます。

 ご覧のように,「最近使ったファイル」オブジェクトは「読み取り専用」と「隠しファイル」(この属性はデフォルトでは個々のファイルではなく,フォルダ自体に設定されている)という性質を持っています。また,この画面の最左端にある「カスタマイズ」タブは,図3[拡大表示]のような機能を持っています。

 画面最上位に「フォルダの種類」オプションが見えると思います。詳細は後述しますが,このオプションは,フォルダの種類を動的に変更する強力な機能を持っています。しかも,これから解説する「Webサービス」とも密接に関係しています。

 これまでの内容を手短に整理しておきましょう。「最近使ったファイル」オブジェクトは,ショートカットによる作業効率改善を目指す一方,隠し属性を使うことにより,一種の作業履歴の隠ぺいという機能を果たしていると思われます。ところが,上記画面には,私たち一般ユーザーがフォルダ性質を自由に変更するためのオプションが用意されています。このため,「最近使ったファイル」オブジェクトは中途半端な役割を果たしている印象を否めません。隠ぺいを重視するなら,フォルダ内のすべてのファイルを効率的に削除できるようにしておく方が自然です。では,「最近使ったファイル」一覧をクリアする機能はどのオブジェクトが提供しているのでしょうか?

 前回触れたように、Windows XPでは「設定」メニューが廃止されたため,「スタート」メニュー自身が提供しているのです。しかし論理的には「最近使ったファイル」メニューに持たせるべきではないかと私は思います。以上で「最近使ったファイル」メニューの説明を終了しますが,「最近使用したファイル」フォルダ内の15個のファイルを操作する補助プログラム「No3RunRecentFiles.exe」(ダウンロードはこちら)を用意してみました。このプログラムはWindows 2000とWindows XPの両環境で動作します。お時間のあるときに試してみてください。「最近使ったファイル」オブジェクトとその情報を表示するGUIの関係がはっきり理解できると思います。出力画面例を図4[拡大表示]に示します。

 それでは次に,Windows XPに新しく追加された「マイ ピクチャ」メニューの世界をのぞいてみましょう。

「マイ ピクチャ」でWebサービスを利用する

 それではまず,「スタート」メニューから「マイ ピクチャ」メニューを選択し,その世界を表示させてみましょう(図5[拡大表示])。

 ご覧のように多数の機能が用意されています。すべての機能を紹介することはできませんから,本日は左上に見える「画像のタスク」カテゴリ内の,「オンラインでプリントを注文する」を中心に解説を進めます。

 「最近使ったファイル」メニューと同じように,「マイ ピクチャ」メニューも何らかの内部オブジェクトの情報を表示するGUIのはずですから,そのオブジェクトの正体を確認しておくことにしましょう。図6[拡大表示]の画面を見てください。

 この画面から,「マイ ピクチャ」メニューはWindowsシステム内部に作成されている「マイ ピクチャ」フォルダ・オブジェクトの情報を表示するGUIであることが分かると思います。なお,画面に見える「Sample Pictures」ショートカット・オブジェクトの正体を知りたい方は,補助プログラム「No3ListMyPictures.exe」(ダウンロードはこちら)を実行してください。この補助プログラムはWindows XP環境でのみ動作します。

 「マイ ピクチャ」メニューの背景が分かりましたから,さっそく,「オンラインでプリントを注文する」機能を見てみましょう。

プリント注文Webサービス

 「オンラインでプリントを注文する」機能はWebサービスです。この機能を左クリックすると,ウィザードが起動され,図7[拡大表示]のようなウィザードが次々に表示されます。

 このプリント・サービスは,Webサービスの一つなのです。ご承知のように,WebサービスはXMLとSOAPという標準プロトコル・ベースの技術です。このウィザードは背後で利用できるWebサービスを検出したあと,必要な注文書を作成し,それを自動送信する機能を提供していると思われます。執筆時点(2001年10月16日)ではプリント・サービスは利用できませんから,これ以上の説明は控えさせていただきます。なお,ウィザードに関する技術的な詳細情報に興味ある方は,こちらを参照してください。この機能は,利用できるようになった時点で再度取り上げることにします。どのようなXML文書オブジェクトが,どこに作成され,どのように管理されるのか楽しみなところです。Passport認証サービスとの関係なども注目したいところです。

 これまでの説明を読みながら,皆さんは次のような疑問を持ちませんでしたか?

“画像プリント・サービスなどのWebサービスは,Windows XPの最大の特長の一つであるはずだ。なら,このサービスは「マイ ピクチャ」メニューだけでなく,好きなときに好きな場所から効率的に利用できないか?”

 私たちはJPEGやBMPなどの画像ファイルを作成し,任意のフォルダに格納しています。画像ファイルの中には,プリント印刷したいものもあります。このような場合,プリントWebサービスを簡単に呼び出し,注文できると便利です。これまでの説明では,「マイ ピクチャ」メニューをまず開き,次に「オンラインでプリントを注文する」機能を呼び出すという,複雑な手順が必要であるかのような印象を与えています。実は,この手順は不要です。画像ファイルを格納するフォルダから直接プリントWebサービスを起動できるような仕組みが用意されているのです。この仕組みこそすでに触れた“フォルダの種類の動的な変更”なのです。それでは手順を簡単に説明しておきましょう。

プリントWebサービス簡単操作

 今回は,“BMP”というフォルダを作成し,その中にBMPファイルを格納しているものとします(図8[拡大表示])。

 この画面から分かるように,「BMP」フォルダには18個のBMPイメージ・ファイルが格納されています。ここでイメージ・ファイルのいくつかをプリント注文することにしましょう。いくつかの操作方法がありますが,一番効率的な方法は,BMPフォルダ自体の種類を変更してしまうことです。このフォルダの「プロパティ」を表示すると,次のような機能が利用できることが分かります(図9[拡大表示])。

 この例ではBMPフォルダには18個のイメージ・ファイルがありますが,ファイル数としては少ないものと判断し,図9のようなオプションを選択してみます。すると,BMPフォルダは図10[拡大表示]のように変化します。これで,BMPフォルダは「マイ ピクチャ」フォルダと同等の機能を持ちWebサービスも利用できるようになりました。Windows XPをお持ちの方は,お時間のあるときに試してみてください。その他のオプションも用意されていますが,別の機会に紹介したいと思います。

 本日は,前回に引き続いてマウス右クリックと内部オブジェクトの関係を明確にするとともに,Windows XPに追加された「マイ ピクチャ」メニューの背景を紹介いたしました。また,フォルダの種類を動的に変更することにより,Webサービスが効率的に利用できるようになる方向性も示しました。次回は,Windows Media Playerを取り上げる予定です。それではまたお会いいたしましょう。ごきげんよう。