次の方法で共有


IMDEmbedded インターフェイス

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
ストレージ デバイスに空き領域がないため、データベースを保存できませんでした。