首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

MSXML在64应用程序中没法创建

2013-01-11 
MSXML在64应用程序中无法创建HRESULT initresultMSXML2 ::IXMLDOMDocumentPtr pDoc initresult pDoc.C

MSXML在64应用程序中无法创建
HRESULT initresult;
MSXML2 ::IXMLDOMDocumentPtr pDoc ;
initresult = pDoc.CreateInstance(__uuidof(MSXML2::DOMDocument40));

if (initresult != S_OK)
{
//无法初始化成功
}


以上代码在编译成32位应用程序时,使用正常,在32位和64位操作系统上都可以。
编译成64位应用程序时,总是出错(64位程序在64位操作系统上才能运行)。

不知道大家有什么排查思路。
[解决办法]
是否需要在64位机器上装32位的msxml运行环境?
[解决办法]
如果不支持64位,那么就只用32位程序,64位OS可以兼容32位程序
[解决办法]

引用:
错误是80040154.
排除组件没有注册的情况,因为编译成32位程序是没问题的。
排除权限不足的情况,因为32位程序是没问题的。

引用:接口中是不是有什么查询错误的接口,看看到底是因为什么失败。
失败后initresult是多少?

你怎么就能这么肯定呢?
32位机上跑没问题,并不代表64位机上跑就没问题。
0x80040154,网上查了下,好像就是没有注册的原因。
CMD命令下运行“regsvr32 msxml2.dll”试试呢。

热点排行