IMDEmbedded インターフェイスは、埋め込み PowerPivot データベースまたは表形式モデル データベースを管理するために使用されるパブリック インターフェイスです。 インターフェイスは、 IPersistStream インターフェイスから継承されます。 このインターフェイスでは、次の操作を実行できます。
コンテナー ドキュメント内の埋め込みストリームの識別子を取得します。
含まれているドキュメントの URL を設定します。
埋め込みアプリケーションがホスト環境にあるかどうかを示すフラグを設定します。
埋め込みアプリケーションで使用される一時ファイルへのパスを設定します。
現在の埋め込み操作を取り消します。
埋め込みオブジェクトを保存するストリームの推定サイズ (バイト単位) を取得します。 このプロパティは、
IPersistStreamから継承されています。埋め込みデータベースが最後に保存されてから変更されたかどうかを確認します。 このプロパティは、
IPersistStreamから継承されています。埋め込みデータベースをローカル エンジンまたはインプロセス エンジンに読み込みます。 このプロパティは、
IPersistStreamから継承されています。コンテナー ドキュメント内の埋め込みストリームにローカルデータベースまたはインプロセス データベースを保存します。 このプロパティは、
IPersistStreamから継承されています。
リファレンス
次のリファレンスでは、msmd.h ヘッダー ファイルに示されているIMDEmbedded インターフェイスについて説明します。
ソース ファイル: PXOEmbeddedData.idl
[
local,
object,
uuid(6B6691CF-5453-41c2-ADD9-4F320B7FD421),
pointer_default(unique)
]
interface IMDEmbeddedData : IPersistStream
{
[id(1), helpstring("Set flag indicating if the application is in a hosted environment")]
HRESULT SetHosted(
[in] BOOL in_fIsHosted);
[id(2), helpstring("Set the URL for the document containing the embedded stream")]
HRESULT SetContainerURL(
[in] BSTR in_bstrURL);
[id(3), helpstring("Get identifier used to look up embedded stream in container document")]
HRESULT GetStreamIdentifier(
[out, retval] BSTR* out_pbstrStreamId);
[id(4), helpstring("Set the path used by the embedding application for temporary files")]
HRESULT SetTempDirPath(
[in] BSTR in_bstrPath);
[id(5), helpstring("Cancel the current operation")]
HRESULT Cancel();
};
IMDEmbeddedData::GetStreamIdentifier
HRESULT GetStreamIdentifier (
[out, retval] BSTR * out_pbstrStreamId
)
説明
コンテナー ドキュメント内の埋め込みストリームに対してホスト アプリケーションによって使用される識別子を取得します。
パラメーター
out_pbstrStreamId
ストリーム識別子の場所を指定します。
戻り値
S_OK
ストリーム識別子が正常に返されました。
S_FALSE
ストリーム識別子がありません。
E_FAIL
ストリーム識別子へのアクセス中にエラーが発生しました。
注釈
現在の接続に埋め込みデータベースが含まれているかどうかを確認するには、OLE DB 接続プロパティの DBPROP_MSMD_EMBEDDED_DATA プロパティの値を確認する必要があります。
DBPROP_MSMD_EMBEDDED_DATAに使用できる値は次のとおりです。
| 名前 | 価値 | 定義 |
|---|---|---|
| DBPROPVAL_EMBED_NONE | 0x00 | 埋め込みデータベースを使用できません |
| DBPROPVAL_EMBED_EMBEDDED | 0x01 | 現在のアプリケーションに埋め込みデータベースが含まれている |
| DBPROPVAL_EMBED_LINKED | 0x02 | 埋め込みデータベースはリモート アプリケーション (つまり SharePoint Server) でホストされます。 |
情報源
[id(1), helpstring("Get identifier used to look up embedded stream in container document")]
HRESULT GetStreamIdentifier(
[out, retval] BSTR* out_pbstrStreamId);
IMDEmbeddedData::SetContainerURL
HRESULT SetContainerURL (
[in] BSTR in_bstrURL
)
説明
埋め込みストリームを含むファイルの URL を設定します。
パラメーター
in_bstrURL
含まれるドキュメントの URL を指定します。
戻り値
S_OK
コンテナーの URL が正常に設定されました。
E_FAIL
コンテナー URL の設定中にエラーが発生しました。
情報源
[id(2), helpstring("Set the URL for the document containing the embedded stream")]
HRESULT SetContainerURL(
[in] BSTR in_bstrURL);
IMDEmbeddedData::SetHosted
HRESULT SetHosted (
[in] BOOL in_fIsHosted
)
説明
埋め込みアプリケーションがホスト環境にあるかどうかを示すフラグを設定します。
パラメーター
in_ftHosted
呼び出し元がサービス アプリケーション (IIS など) でホストされている場合は TRUE。
戻り値
S_OK
フラグが正常に設定されました。
E_FAIL
フラグの設定中にエラーが発生しました。
情報源
[id(5), helpstring("Set flag indicating if the application is in a hosted environment")]
HRESULT SetHosted(
[in] BOOL in_fIsHosted);
IMDEmbeddedData::SetTempDirPath
HRESULT SetTempDirPath (
[in] BSTR in_bstrPath
)
説明
埋め込みアプリケーションで使用される一時ファイルへのパスを設定します。
パラメーター
in_bstrPath
ホスト アプリケーションが一時ファイルに使用するパス。
戻り値
S_OK
一時ファイル ディレクトリが正常に設定されました。
E_FAIL
パスの設定中にエラーが発生しました。
情報源
[id(4), helpstring("Set the path used by the host application for temporary files")]
HRESULT SetTempDirPath(
[in] BSTR in_bstrPath);
IMDEmbeddedData::Cancel
HRESULT Cancel ( void )
説明
現在の埋め込みデータベース操作を取り消します。
パラメーター
なし。
戻り値
S_OK
操作が正常に取り消されました。
DB_E_CANTCANCEL
現在、取り消し可能な操作は進行中です。
E_FAIL
埋め込み操作の取り消し中にエラーが発生しました。
情報源
[id(5), helpstring("Cancel the current operation")]
HRESULT Cancel();
IMDEmbeddedData::GetSizeMax (IPersistStream::GetSizeMax)
HRESULT GetSizeMax (
[out] ULARGE_INTEGER * out_pcbSize
)
説明
埋め込みオブジェクトを保存するストリームの推定サイズ (バイト単位) を取得します。 このプロパティは、IPersistStream から継承されています。
パラメーター
in_bstrPath
埋め込みデータベース イメージの推定サイズ (バイト単位)。
戻り値
S_OK
サイズが正常に取得されました。
E_FAIL
サイズの取得中にエラーが発生しました。
IMDEmbeddedData::IsDirty (IPersistStream::IsDirty)
HRESULT IsDirty ( void )
説明
埋め込みデータベースが最後に保存されてから変更されたかどうかを確認します。 このプロパティは、IPersistStream から継承されています。
パラメーター
なし
戻り値
S_OK
データベースは最後に保存されてから変更されています。
S_FALSE
データベースは、最後に保存されてから変更されていません。
E_FAIL
データベースの状態の取得中にエラーが発生しました。
IMDEmbeddedData::Load (IPersistStream::Load)
HRESULT Load (
[in] IStream * in_pStm
)
説明
埋め込みデータベースをローカル エンジンまたはインプロセス エンジンに読み込みます。 このプロパティは、IPersistStream から継承されています。
パラメーター
in_pStm
埋め込みデータベースを読み込む場所からのストリーム インターフェイスへのポインター。
戻り値
S_OK
データベースが正常に読み込まれました。
E_OUTOFMEMORY
データベースを読み込むのに十分なメモリがありません。
E_FAIL
データベースの読み込み中に、 E_OUTOFMEMORYとは異なるエラーが発生しました。
IMDEmbeddedData::Save (IPersistStream::Save)
HRESULT Save (
[in] IStream * in_pStm,
[in] BOOL in_fClearDirty
)
説明
コンテナー ドキュメント内の埋め込みストリームにローカルデータベースまたはインプロセス データベースを保存します。 このプロパティは、IPersistStream から継承されています。
パラメーター
in_pStm
埋め込みデータベースを保存する場所へのストリーム インターフェイスへのポインター。
in_fClearDirty
この操作の後にダーティ フラグをクリアするかどうかを示すフラグ。
戻り値
S_OK
データベースが正常に保存されました。
STG_E_CANTSAVE
データベースの保存中に、 STG_E_MEDIUMFULLとは異なるエラーが発生しました。
STG_E_MEDIUMFULL
ストレージ デバイスに空き領域がないため、データベースを保存できませんでした。