对象"MSXML2.ServerXMLHTTP.4.0“从何而来?哪个安装包?
我正在尝试执行以下操作:
Set oXMLHTTP = CreateObject("MSXML2.ServerXMLHTTP.4.0")此尝试在我的开发机器上失败(没有返回任何对象),但在我同事的开发机器上成功。显然,他安装了我没有安装的东西,反之亦然,但是这个对象、dll等是从哪里来的呢?
我需要安装什么才能使此呼叫正常工作?
根据记录,不能选择将对象更改为不同的版本,因为这所依赖的代码已经针对此特定版本测试了几天。我们得回去再测试一次……
为了进一步说明这个问题,我如何知道当前安装的是哪个版本的MS XML?
发布于 2009-06-02 21:04:21
尝试使用此函数:-
Function ProgIDInstalled(progID)
On Error Resume Next
Dim o : Set o = CreateObject(progID)
ProgIDInstalled = Err.Number = 0
End Function
If ProgIDInstalled("MSXML2.DOMDocument.3.0") Then
' MSXML3 is present '
End If
If ProgIDInstalled("MSXML2.DOMDocument.4.0") Then
' MSXML4 is present '
End If
If ProgIDInstalled("MSXML2.DOMDocument.5.0") Then
' MSXML5 is present '
End If
If ProgIDInstalled("MSXML2.DOMDocument.6.0") Then
' MSXML6 is present '
End If令我惊讶的是,即使是现在,仍然有针对4.0版本的新开发。Microsoft现在只修补版本3.0和版本6.0的MSXML核心。
我知道现在太晚了,但实际上你应该使用3.0,它的优点是它在目前支持的所有Windows平台上无处不在,所以你真的不需要考虑安装它。或者使用6.0,因为您需要包含MSXML的发行版,所以它也可能是6,因为这是最新的版本,4和5都没有获得任何安全补丁。
发布于 2009-06-06 17:45:40
它们都可以同时安装。看一下Windows/system32/msxml(ver).dll。
如果您指的是注册的版本,请查看以下内容:
http://support.microsoft.com/kb/278674
当然,您可以像注册/注销任何其他dll一样进行注册/注销。
发布于 2010-04-21 13:08:22
请注意MSXML 4.0 SP2 has meet its end of support。您应该迁移到MSXML6.0以获得最好的支持和增强,或者退回到用于旧系统的MSXML 4.0 SP3。
https://stackoverflow.com/questions/941725
复制相似问题