Метод IPrintCoreHelperPS::CreateInstanceOfMSXMLObject (prcomoem.h)
Метод IPrintCoreHelperPS::CreateInstanceOfMSXMLObject создает экземпляр объекта MSXML.
Синтаксис
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 (описано в документации по пакету SDK для Microsoft Windows).
[in] riid
Ссылка на идентификатор интерфейса, который будет использоваться для взаимодействия с объектом.
[out] ppv
Указатель на адрес памяти, который получает адрес интерфейса, запрошенного в параметре riid. Если IPrintCoreHelperPS::CreateInstanceOfMSXMLObject успешно возвращается, *ppv содержит адрес запрошенного интерфейса. Если этот метод завершается ошибкой, *ppv содержит NULL.
Возвращаемое значение
IPrintCoreHelperPS::CreateInstanceOfMSXMLObject должен возвращать одно из следующих значений.
Возвращаемый код | Описание |
---|---|
|
Экземпляр указанного класса объектов был успешно создан. |
|
Указанный класс нельзя создать как часть агрегата. |
|
Указанный класс не реализует запрошенный интерфейс, а управляемый интерфейс IUnknown не предоставляет запрошенный интерфейс. |
|
Указанный класс не зарегистрирован в базе данных регистрации. Это значение также может указывать на то, что тип сервера, запрошенного в типе перечисления CLSCTX, не зарегистрирован или значения для типов серверов в реестре повреждены. |
Замечания
Подключаемый модуль не должен напрямую создавать объект MSXML путем вызова CoCreateInstance (описанного в документации по пакету SDK для Windows). Вместо этого он должен вызывать Pscript для этого. Причина заключается в том, что в определенных условиях, когда драйвер принтера может использоваться, например с более старыми версиями операционной системы, операционная система не должна регистрировать требуемую версию MSXML, которая в настоящее время является версией 6. В таких ситуациях вызов CoCreateInstance может завершиться ошибкой. Однако основной драйвер гарантирует, что в любом месте присутствует драйвер, библиотека DLL средства синтаксического анализа MSXML также присутствует на компьютере, что позволяет при необходимости создать объект MSXML.
Требования
Требование | Ценность |
---|---|
целевая платформа | Настольный |
заголовка | prcomoem.h (include Prcomoem.h) |