IMDEmbedded 인터페이스
IMDEmbedded 인터페이스는 포함된 PowerPivot 데이터베이스 또는 테이블 형식 model 데이터베이스를 관리하는 데 사용되는 공용 인터페이스입니다. 이 인터페이스는 IPersistStream 인터페이스에서 상속됩니다. 이 인터페이스에서는 다음 작업이 허용됩니다.
컨테이너 문서의 포함된 스트림에 대한 식별자를 가져옵니다.
포함하는 문서의 URL을 설정합니다.
포함하는 응용 프로그램이 호스팅된 환경에 있는지 여부를 나타내는 플래그를 설정합니다.
포함하는 응용 프로그램에 사용되는 임시 파일에 대한 경로를 설정합니다.
현재 포함된 작업을 취소합니다.
포함된 개체를 저장하기 위해 스트림의 예상 크기(바이트)를 가져옵니다. IPersistStream에서 상속됩니다.
포함된 데이터베이스가 마지막으로 저장된 후에 변경되었는지 여부를 확인합니다. IPersistStream에서 상속됩니다.
포함된 데이터베이스를 로컬 또는 in-process 엔진에 로드합니다. IPersistStream에서 상속됩니다.
로컬 또는 in-process 데이터베이스를 컨테이너 문서의 포함된 스트림에 저장합니다. 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
)
설명
포함된 데이터베이스를 로컬 또는 in-process 엔진에 로드합니다. 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
)
설명
로컬 또는 in-process 데이터베이스를 컨테이너 문서의 포함된 스트림에 저장합니다. IPersistStream에서 상속됩니다.
매개 변수
in_pStm
포함된 데이터베이스를 저장할 스트림 인터페이스에 대한 포인터입니다.in_fClearDirty
이 작업 후에 변경 플래그를 지워야 하는지 여부를 나타내는 플래그입니다.
반환 값
S_OK
데이터베이스를 저장했습니다.STG_E_CANTSAVE
데이터베이스를 저장하는 동안 오류가 발생했습니다. STG_E_MEDIUMFULL과 다릅니다.STG_E_MEDIUMFULL
저장 장치에 남아 있는 공간이 없으므로 데이터베이스를 저장할 수 없습니다.