Structured StorageFundamentalsCOM Objects and Structured Storage

COM オブジェクトと構造化ストレージ

普遍的に頻繁に使用されるプロパティの使用法があります。 プロパティが、システムオブジェクトの情報についての記録を、そのオブジェクトのドキュメントであるかのように扱うことができることです。 例えばプリンタであると言う風に、あるオブジェクトとしてプロパティを記録することがあります。 その場合、このオブジェクトのプロパティを見るためには、そのオブジェクトのロケーションや、タイプなどの情報のみが必要となります。 ユーザーオブジェクトは、プロパティセットを所持しています。 プロパティセットには、例えば、姓、名、会社名、電話番号…などといった情報が含まれています。 アプリケーションは、例えばある建物にあるプリンタをすべて表示し、それらのプロパティに基づいたオブジェクトに対して、システム全体に及ぶクエリーに書き込む事ができます。 但し、現行のシステムで頻繁に使用されるのは、ドキュメントに含まれるプロパティです。

COM に定義されているプライマリプロパティセットの標準は、 サマリインフォメーションプロパティセットです。 このプロパティセットは、シンプルで頻繁に使用されます。 アプリケーションによって作成されたドキュメントには、そのドキュメントのユーザにとって有用な属性のコモンセットが含まれます。 これらの属性には、ドキュメント製作者、ドキュメントサブジェクト、作成日時…などが含まれます。 Office 95 / Office 97 以降として、2種の異なるプロパティセットが定義されています。 COM ドキュメントプロパティセットとユーザ定義のプロパティセットです。 詳細については、構造化ストレージプロパティセットフォーマットを参照して下さい。

Windows ® 3.1 では、アプリケーションは、ドキュメントに含まれるこのような情報の所持の方法は異なっていました。 ドキュメントのサマリインフォメーションを調査するために、ユーザはドキュメントを作成したアプリケーションを起動してファイルを開き、アプリケーションのサマリインフォメーションダイアログボックスを開かなければなりませんでした。 サマリインフォメーションを表示だけのために、このような手続きを取る必要があったのです。

COM プロパティセットやプロパティセットインターフェースはドキュメントプロパティをアプリケーションを起動することなしで見ることができるようにします。 たとえば、 Microsoft® Word の 6.0 もしくはそれ以降の全てのバージョンや、その他多くの COM アプリケーションで保存された COM 構造化ストレージドキュメントや、またそこに記述されたプロパティセットについてです。 このように、Office パッケージ アプリケーションは、ファイルが COM 構造化ストレージファイルであり、ファイルを作成したアプリケーションが COM プロパティセットフォーマットで保存する限り、The Summary Information Property Set を表示することができます。 たとえば、Windows 95/98 のシェルはこれを利用することで、エンドユーザがシェルから直接 Word 6.0 もしくはそれ以降のドキュメントプロパティを見られるようにします。

あるアプリケーションからプロパティセットを利用するためには、そのアプリケーションはそのプロパティセットに含まれているプロパティのどれが標準を意味するか解釈する方法を理解していなければなりません。 COM はひとつの標準的なプロパティセットの定義である COM Summary Information Property Set によってこのアプローチを開拓しました。 プロパティセットの定義をもつアプリケーションは、とても簡単にそのドキュメントのサマリーインフォメーションにアクセスすることが可能です。 そのドキュメントとは、プロパティセットの詳細を使用した COM アプリケーションによって作成されたドキュメントのことです。