Método IPrintCoreHelperPS::CreateInstanceOfMSXMLObject (prcomoem.h)
El método IPrintCoreHelperPS::CreateInstanceOfMSXMLObject crea una instancia de un objeto MSXML.
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 dirección de memoria que recibe la dirección de la interfaz que se solicita en el parámetro riid . Si IPrintCoreHelperPS::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
IPrintCoreHelperPS::CreateInstanceOfMSXMLObject debe devolver uno de los valores siguientes.
Código devuelto | Descripción |
---|---|
|
Se creó correctamente una instancia de la clase de objeto especificada. |
|
La clase especificada no se puede crear como parte de un agregado. |
|
La clase especificada no implementa la interfaz solicitada o la interfaz IUnknown de control no expone la interfaz solicitada. |
|
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
El complemento no debe crear directamente un objeto MSXML llamando a CoCreateInstance (descrito en la documentación de Windows SDK). En su lugar, debe llamar a Pscript para hacerlo. El motivo es que, en determinadas condiciones en las que se pueda usar el controlador de impresora, como con versiones anteriores del sistema operativo, el sistema operativo no necesita registrar la versión necesaria de MSXML, que actualmente es la versión 6. En tales situaciones, se puede producir un error al llamar a CoCreateInstance. Sin embargo, el controlador principal garantiza que siempre que el controlador esté presente, el archivo DLL del analizador MSXML también está presente en la máquina, lo que permite crear un objeto MSXML cuando sea necesario.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | prcomoem.h (incluya Prcomoem.h) |