IMDEmbedded 인터페이스는 포함된 PowerPivot 데이터베이스 또는 테이블 형식 모델 데이터베이스를 관리하는 데 사용되는 공용 인터페이스입니다. 인터페이스는 인터페이스에서 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
스토리지 디바이스에 남은 공간이 없기 때문에 데이터베이스를 저장할 수 없습니다.