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

El método IPrintCoreHelper::CreateInstanceOfMSXMLObject crea una instancia de un objeto MSXML 6.0 mediante el archivo DLL MSXML correcto.

Sintaxis

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

CLSID asociado a los datos y el código que se usarán para crear el objeto.

[in] pUnkOuter

Puntero a la interfaz IUnknown del objeto agregado (el control IUnknown). Este parámetro debe ser NULL, lo que significa que el objeto no se está creando como parte de un agregado.

[in] dwClsContext

Contexto en el que se ejecutará el código que administra el objeto recién creado. Los únicos valores válidos son NULL y CLSCTX_INPROC_SERVER, que es un valor de la enumeración CLSCTX (que se describe en la documentación de Microsoft Windows SDK).

[in] riid

Referencia al identificador de la interfaz que se usará para comunicarse con el objeto .

[out] ppv

Puntero a una variable que recibe la dirección de la interfaz que se solicita en el parámetro riid . Si IPrintCoreHelper::CreateInstanceOfMSXMLObject devuelve correctamente, *ppv contiene la dirección de la interfaz solicitada. Si se produce un error en este método, *ppv contiene NULL.

Valor devuelto

IPrintCoreHelper::CreateInstanceOfMSXMLObject debe devolver uno de los valores siguientes.

Código devuelto Descripción
S_OK
Se creó correctamente una instancia de la clase de objeto especificada.
CLASS_E_NOAGGREGATION
La clase especificada no se puede crear como parte de un agregado.
E_NOINTERFACE
La clase especificada no implementa la interfaz solicitada o la interfaz IUnknown de control no expone la interfaz solicitada.
REGDB_E_CLASSNOTREG
Una clase especificada no está registrada en la base de datos de registro. Este valor también puede indicar que el tipo de servidor solicitado en el tipo de enumeración CLSCTX no está registrado o que los valores de los tipos de servidor del Registro están dañados.

Comentarios

IPrintCoreHelper::CreateInstanceOfMSXMLObject permite a un complemento usar objetos MSXML de forma segura incluso cuando se ejecuta en máquinas cliente de nivel descendente (es decir, máquinas cliente que ejecutan Windows Server 2003, Windows XP o Windows 2000).

Los parámetros de este método se asignan directamente a los de la función CoCreateInstance (que se describe en la documentación de Windows SDK). Tenga en cuenta que la instalación de un controlador de Windows Vista en un equipo que ejecuta una versión anterior de Windows no hace que se instale MSXML 6.0. El archivo DLL real se incluye con los archivos DLL dependientes del controlador y se carga desde el directorio del controlador. No está registrado en el sistema. Los complementos que usan este método solo deben crear objetos MSXML.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado prcomoem.h (incluya Prcomoem.h)