IXMLDOMAttribute作为VBScript函数的返回值

时间:2013-12-02 12:39:16

标签: vbscript msxml

我正在使用VBScript和MSXML DOM创建XML文档。为了构造和简化我的代码,我正在使用类和方法(VBS中的函数)。

这是一个困扰我的小功能:

function createAttribute(name, value)

dim doc 
Set doc = CreateObject("Msxml2.DOMDocument.4.0")

dim attr 
set attr= doc.createNode(2,name,"")
attr.NodeValue=value

createAttribute=attr

end function

赋值createAttribute=attr,我设置函数的返回值,导致以下错误:

  

Object不支持此属性或方法

由于使用VBS进行XML处理的网络资源相当稀少,我希望你们中的一些人可以帮助我理解这里发生的事情。以下是我的问题:

哪个对象不支持哪种属性或方法?

我可以将任何给定类的对象作为VBS函数的返回值传递吗?

我可以将类IXMLDOMAttribute的对象作为返回值传递给VBS函数吗?

1 个答案:

答案 0 :(得分:2)

我认为问题是attr是一个对象,因此您需要使用set来应用返回值。否则,您可能只是返回attr的默认属性值(如果有):

set createAttribute = attr

您没有显示如何使用返回值,因此我无法对此发表评论,但它可能是错误的来源。