다음을 통해 공유


IPrintCoreHelperPS::CreateInstanceOfMSXMLObject 메서드(prcomoem.h)

IPrintCoreHelperPS::CreateInstanceOfMSXMLObject 메서드는 MSXML 개체의 instance 만듭니다.

구문

HRESULT CreateInstanceOfMSXMLObject(
  [in]  IN REFCLSID  rclsid,
  [in]  IN LPUNKNOWN pUnkOuter,
  [in]  IN DWORD     dwClsContext,
  [in]  IN REFIID    riid,
  [out] OUT LPVOID   *ppv
);

매개 변수

[in] rclsid

개체를 만드는 데 사용할 데이터 및 코드와 연결된 CLSID입니다.

[in] pUnkOuter

집계 개체의 IUnknown 인터페이스(제어 IUnknown)에 대한 포인터입니다. 이 매개 변수는 NULL이어야 합니다. 즉, 개체가 집계의 일부로 만들어지지 않습니다.

[in] dwClsContext

새로 만든 개체를 관리하는 코드가 실행되는 컨텍스트입니다. 유효한 값은 NULL 및 CLSCTX_INPROC_SERVER, CLSCTX 열거형의 값입니다(Microsoft Windows SDK 설명서에 설명되어 있음).

[in] riid

개체와 통신하는 데 사용할 인터페이스의 식별자에 대한 참조입니다.

[out] ppv

riid 매개 변수에서 요청된 인터페이스의 주소를 수신하는 메모리 주소에 대한 포인터입니다. IPrintCoreHelperPS::CreateInstanceOfMSXMLObject가 성공적으로 반환되면 *ppv에 요청된 인터페이스의 주소가 포함됩니다. 이 메서드가 실패하면 *ppvNULL이 포함됩니다.

반환 값

IPrintCoreHelperPS::CreateInstanceOfMSXMLObject 는 다음 값 중 하나를 반환해야 합니다.

반환 코드 Description
S_OK
지정된 개체 클래스의 instance 성공적으로 만들어졌습니다.
CLASS_E_NOAGGREGATION
지정된 클래스를 집계의 일부로 만들 수 없습니다.
E_NOINTERFACE
지정된 클래스가 요청된 인터페이스를 구현하지 않거나 제어하는 IUnknown 인터페이스가 요청된 인터페이스를 노출하지 않습니다.
REGDB_E_CLASSNOTREG
지정된 클래스가 등록 데이터베이스에 등록되지 않았습니다. 이 값은 CLSCTX 열거형 형식에서 요청한 서버 유형이 등록되지 않았거나 레지스트리의 서버 형식 값이 손상되었음을 나타낼 수도 있습니다.

설명

플러그 인은 CoCreateInstance(Windows SDK 설명서에 설명됨)를 호출하여 MSXML 개체를 직접 만들면 안 됩니다. 대신 Pscript를 호출하여 호출해야 합니다. 그 이유는 이전 운영 체제 버전과 같이 프린터 드라이버를 사용할 수 있는 특정 조건에서 운영 체제가 현재 버전 6인 MSXML의 필수 버전을 등록할 필요가 없기 때문입니다. 이러한 상황에서는 CoCreateInstance를 호출하지 못할 수 있습니다. 그러나 핵심 드라이버는 드라이버가 있는 곳마다 MSXML 파서 DLL도 머신에 존재하므로 필요할 때 MSXML 개체를 만들 수 있습니다.

요구 사항

요구 사항
대상 플랫폼 데스크톱
머리글 prcomoem.h(Prcomoem.h 포함)