LocalizeStructured Storage

構造化ストレージ

このセクションは、構造化ストレージプログラミングのための日本語リファレンスを提供します。 構造化ストレージの COM 実装である複合ファイル実装の制限に関する情報もあります。 このセクションでは、以下について説明します。

目的

構造化ストレージ (Structured Storage) は、COM にけるファイルおよびデータの永続化を提供します。 これは、単一のファイルをストレージやストリームとして知られているオブジェクトの構造化したコレクションとして扱います。

構造化ストレージの目的は、単一ファイル内に個別のオブジェクトを格納する際のパフォーマンス低下やオーバーヘッドを減少させることです。

構造化ストレージは、複合ファイル (Compound Files) と呼ばれる標準の実装によって、単一のファイルを 2つのタイプのオブジェクト(ストリームとストレージ)の構造化したコレクションとして扱う方法を提供します。

ユーザは、あたかもそれが個別のオブジェクトのネストした階層ではなく単一のファイルであるかのように対話し、また複合ファイルを管理できます。

つまるところ、ファイルとフォルダの関係に似た、ストレージとストリームオブジェクトを主体としたデータ保存メカニズムです。

プログラマは、これらのオブジェクトを使用して、ファイルシステム上に、またはメモリブロック上に、名前付きのネストしたデータブロックを書き込み、読み込みする事ができます。

このメカニズムは古い Microsoft Windows から使用されてきましたが、現在の Windwos でも、Shell や DirectShow などから利用されています。

特に、プロパティやプロパティセットといった概念は、新しいシェルでも頻繁に出現し、それらがストレージやストリームに格納されたり、そこから読み出したりするシチュエーションが発生します。

プラットフォーム

構造化ストレージは、Microsoft®の COM ベースのシステムで利用可能です。

WindowsNT® 4.0 以降、および Windows95 以降のシステム。

開発者について

プラットフォームSDK 内の構造化ストレージ文書は、経験を積んだ C および C++ プログラマ、および COM ベースのシステム開発者を意図しています。

構造化ストレージは、主に C と C++ のプログラミング言語で利用できます。 しかし、いかなる COM ベースの技術でも、さらにインタフェースポインタを利用するすべてのプログラミング言語でも利用可能です。

COM 技術についての確実な理解は、開発における構造化ストレージ使用の前提条件です。

関連記事