ILayoutStorage::LayoutScript メソッド (objidl.h)

LayoutScript メソッドは、複合ファイル内のストレージ、ストリーム、およびコントロールを、ダウンロード中にアクセスされる順序に合わせて並べ替える明示的な指示を提供します。

構文

HRESULT LayoutScript(
  [in] StorageLayout *pStorageLayout,
  [in] DWORD         nEntries,
  [in] DWORD         glfInterleavedFlag
);

パラメーター

[in] pStorageLayout

StorageLayout 構造体の配列へのポインター。

[in] nEntries

StorageLayout 構造体の配列内のエントリの数。

[in] glfInterleavedFlag

将来利用するために予約されています。

戻り値

この関数は、標準の戻り値E_OUTOFMEMORY、E_UNEXPECTED、E_INVALIDARG、およびE_FAILをサポートします。また、次に示します。

リターン コード 説明
STG_E_INVALIDPOINTER ストレージ レイアウト ポインターが無効です。
STG_E_INVALIDFLAG glfInterleavedFlag の値が無効です。
STG_E_PATHNOTFOUND 指定された新しいドキュメント ファイル名が無効です。
STG_E_INSUFFICIENTMEMORY 操作を完了させるための十分なメモリがありません。
STG_E_INVALIDPARAMETER いずれかのパラメーターが無効です。
STG_E_INUSE ILayoutStorage が既に監視されている間に BeginMonitor メソッドが呼び出されました。

注釈

明示的なレイアウト命令を提供するために、アプリケーションは ILayoutStorage::LayoutScript を呼び出し、 StorageLayout 構造体の配列を渡します。 各構造体は、単一のストレージまたはストリーム データ ブロックを定義し、 ブロックを ILockBytes バイト配列内のどこに書き込むかを指定します。

アプリケーションは、特定の複合ファイルの構造が指示する可能性があるため、スクリプト化されたレイアウトと監視を組み合わせることができます。

複合ファイル全体の最適なデータ レイアウト パターンが決定されると、アプリケーションは ILayoutStorage::ReLayoutDocfile を呼び出して、複合ファイルがデータ セクターにアクセスされた順序に一致するように再構築します。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
対象プラットフォーム Windows
ヘッダー objidl.h
Library Uuid.lib
[DLL] Ole32.dll

こちらもご覧ください

ILayoutStorage::ReLayoutDocfile

ILockBytes

StorageLayout