Método IPrintCoreHelper::CreateInstanceOfMSXMLObject (prcomoem.h)

O método IPrintCoreHelper::CreateInstanceOfMSXMLObject cria uma instância de um objeto MSXML 6.0 usando a DLL MSXML correta.

Sintaxe

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

Parâmetros

[in] rclsid

O CLSID associado aos dados e ao código que serão usados para criar o objeto.

[in] pUnkOuter

Um ponteiro para a interface IUnknown do objeto de agregação (o IUnknown controlador). Esse parâmetro deve ser NULL, o que significa que o objeto não está sendo criado como parte de uma agregação.

[in] dwClsContext

O contexto no qual o código que gerencia o objeto recém-criado será executado. Os únicos valores válidos são NULL e CLSCTX_INPROC_SERVER, que é um valor da enumeração CLSCTX (descrito na documentação do SDK do Microsoft Windows).

[in] riid

Uma referência ao identificador da interface que será usada para se comunicar com o objeto .

[out] ppv

Um ponteiro para uma variável que recebe o endereço da interface solicitada no parâmetro riid . Se IPrintCoreHelper::CreateInstanceOfMSXMLObject retornar com êxito , *ppv conterá o endereço da interface solicitada. Se esse método falhar, *ppv conterá NULL.

Retornar valor

IPrintCoreHelper::CreateInstanceOfMSXMLObject deve retornar um dos seguintes valores.

Código de retorno Descrição
S_OK
Uma instância da classe de objeto especificada foi criada com êxito.
CLASS_E_NOAGGREGATION
A classe especificada não pode ser criada como parte de uma agregação.
E_NOINTERFACE
A classe especificada não implementa a interface solicitada ou a interface IUnknown controladora não expõe a interface solicitada.
REGDB_E_CLASSNOTREG
Uma classe especificada não está registrada no banco de dados de registro. Esse valor também pode indicar que o tipo de servidor solicitado no tipo de enumeração CLSCTX não está registrado ou os valores dos tipos de servidor no registro estão corrompidos.

Comentários

IPrintCoreHelper::CreateInstanceOfMSXMLObject permite que um plug-in use objetos MSXML com segurança mesmo quando ele é executado em computadores cliente de nível inferior (ou seja, computadores cliente que executam o Windows Server 2003, Windows XP ou Windows 2000).

Os parâmetros neste método são mapeados diretamente para os da função CoCreateInstance (que é descrita na documentação do SDK do Windows). Observe que a instalação de um driver do Windows Vista em um computador que executa uma versão anterior do Windows não faz com que o MSXML 6.0 seja instalado. A DLL real está incluída com as DLLs dependentes do driver e é carregada do diretório do driver. Ele não está registrado no sistema. Os plug-ins que usam esse método devem criar apenas objetos MSXML.

Requisitos

Requisito Valor
Plataforma de Destino Área de Trabalho
Cabeçalho prcomoem.h (inclua Prcomoem.h)