OleCreateFromFile 関数 (ole2.h)
名前付きファイルの内容から埋め込みオブジェクトを作成します。
構文
HRESULT OleCreateFromFile(
[in] REFCLSID rclsid,
[in] LPCOLESTR lpszFileName,
[in] REFIID riid,
[in] DWORD renderopt,
[in] LPFORMATETC lpFormatEtc,
[in] LPOLECLIENTSITE pClientSite,
[in] LPSTORAGE pStg,
[out] LPVOID *ppvObj
);
パラメーター
[in] rclsid
このパラメーターは予約されており、CLSID_NULLする必要があります。
[in] lpszFileName
オブジェクトの初期化元となるファイルの完全パスを指定する文字列へのポインター。
[in] riid
呼び出し元が後で使用して新しいオブジェクトとの通信に使用するインターフェイスの識別子への参照 (通常はIID_IOleObject、OLE ヘッダーで IOleObject のインターフェイス ID として定義されます)。
[in] renderopt
新しく作成されたオブジェクトが持つローカルにキャッシュされた描画またはデータ取得機能を示す列挙 OLERENDER からの値。 選択した OLERENDER 値は、 lpFormatEtc パラメーターに使用できる値に影響します。
[in] lpFormatEtc
renderopt の値として使用される OLERENDER フラグに応じて、FORMATETC 列挙値の 1 つへのポインター。 制限については、 OLERENDER 列挙も参照してください。
[in] pClientSite
オブジェクトがコンテナーからサービスを要求するプライマリ インターフェイスである IOleClientSite のインスタンスへのポインター。 このパラメーターは、NULL でもかまいません。
[in] pStg
ストレージ オブジェクトの IStorage インターフェイスへのポインター。 このパラメーターを NULL にすることはできません。
[out] ppvObj
riid で要求されたインターフェイス ポインターを受け取るポインター変数のアドレス。 正常に戻ると、*ppvObj には、新しく作成されたオブジェクトに要求されたインターフェイス ポインターが含まれます。
戻り値
この関数は、成功したS_OKを返します。 その他の使用可能な値は次のとおりです。
リターン コード | 説明 |
---|---|
|
ファイルがバインドされていません。 |
|
ソースにバインドできません。 |
|
メディアがいっぱいです。 |
|
無効な TYMED です。 |
|
LINDEX が無効です。 |
|
FORMATETC 構造体が無効です。 |
注釈
OleCreateFromFile 関数は、名前付きファイルの内容から新しい埋め込みオブジェクトを作成します。 登録データベースの ProgID に PackageOnFileDrop キーが含まれている場合は、パッケージが作成されます。 それ以外の場合、この関数は GetClassFile 関数を呼び出して lpszFileName パラメーターに関連付けられた CLSID を取得し、その CLSID に関連付けられた OLE 2 埋め込みオブジェクトを作成します。 OleCreateFromFile の rclsid パラメーターは常に無視され、CLSID_NULLに設定する必要があります。
他の OleCreateXxx 関数に関しては、新しく作成されたオブジェクトは編集用にユーザーに表示されないため、 DoVerb 操作が必要です。 ファイルの挿入操作を実装するために使用されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows 2000 Server [デスクトップ アプリのみ] |
対象プラットフォーム | Windows |
ヘッダー | ole2.h (Ole2.h を含む) |
Library | Ole32.lib |
[DLL] | Ole32.dll |