我目前正在将VBA XML阅读器重写为项目的VB.net版本。我在VBA中有以下代码:
Dim XML_Doc As Object: Set XML_Doc = CreateObject("MSXML2.DOMDocument")
Dim XML_Detail As New ADODB.Recordset: XML_Detail.ActiveConnection =
"Provider=MSDAOSP; Data Source=MSXML2.DSOControl.2.6;"
有人告诉我,我应该可以在我的VB.Net版本中使用几乎所有的代码,但是我遇到了一些问题。我添加了作为VB.net项目的参考Microsoft ActiveX 2.8,所以我可以使用ADODB。
VB.Net中的代码是
Dim XmlDoc As Object : XmlDoc = CreateObject("MSXML2.DOMDocument")
Dim XmlDetail As New ADODB.Recordset : XmlDetail.ActiveConnection =
"Provider=MSDAOSP; Data Source=MSXML2.DSOControl.2.6;"
运行应用程序时,它会转到XmlDetail并抛出以下错误:
System.Runtime.InteropServices.COMException was unhandled.
Arguments are of the wrong type, are out of acceptable range,
or are in conflict with one another.
有没有人有这方面的经验或我如何解决它?
由于
答案 0 :(得分:4)
答案 1 :(得分:1)
经过大量工作,我找到了解决方案:
Dim XmlDoc As Object : XmlDoc = CreateObject("MSXML2.DOMDocument")
XmlDetail.Open(DirSaveXml & ServiceName & ".xml", "Provider=MSDAOSP; Data Source=MSXML2.DSOControl.2.6;")