IPrintCoreHelper::CreateInstanceOfMSXMLObject 方法 (prcomoem.h)
IPrintCoreHelper::CreateInstanceOfMSXMLObject 方法使用正确的 MSXML DLL 创建 MSXML 6.0 对象的实例。
语法
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,这是 Microsoft Windows SDK 文档) 中描述的 CLSCTX 枚举 (的值。
[in] riid
对接口标识符的引用,该接口将用于与 对象通信。
[out] ppv
指向变量的指针,该变量接收 riid 参数中请求的接口的地址。 如果 IPrintCoreHelper::CreateInstanceOfMSXMLObject 成功返回,则 *ppv 包含所请求接口的地址。 如果此方法失败,则 *ppv 包含 NULL。
返回值
IPrintCoreHelper::CreateInstanceOfMSXMLObject 应返回以下值之一。
返回代码 | 说明 |
---|---|
|
已成功创建指定对象类的实例。 |
|
无法将指定的类创建为聚合的一部分。 |
|
指定的类不实现请求的接口,或者控制 IUnknown 接口不公开请求的接口。 |
|
指定的类未在注册数据库中注册。 此值还可以指示在 CLSCTX 枚举类型中请求的服务器类型未注册,或者注册表中服务器类型的值已损坏。 |
注解
IPrintCoreHelper::CreateInstanceOfMSXMLObject 使插件能够安全地使用 MSXML 对象,即使它在下层客户端计算机上运行, (即运行 Windows Server 2003、Windows XP 或 Windows 2000) 的客户端计算机。
此方法中的参数直接映射到 Windows SDK 文档) 中所述的 CoCreateInstance 函数 (的参数。 请注意,在运行以前版本的 Windows 的计算机上安装 Windows Vista 驱动程序不会导致安装 MSXML 6.0。 实际 DLL 包含在依赖于驱动程序的 DLL 中,并从驱动程序目录加载。 它未在系统上注册。 使用此方法的插件应仅创建 MSXML 对象。
要求
要求 | 值 |
---|---|
目标平台 | 桌面 |
标头 | prcomoem.h (包括 Prcomoem.h) |