다음을 통해 공유


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
    저장 장치에 남아 있는 공간이 없으므로 데이터베이스를 저장할 수 없습니다.