51Testing软件测试论坛

标题: 请问这段代码的错误 [打印本页]

作者: vincenthan    时间: 2007-8-7 18:04
标题: 请问这段代码的错误
我输入如下代码:
Dim a1,a2,a3,s
Set a1=createobject("scripting.filesystemobject")
Set a2=a1.createfolder("e:\han\bin")
Set s=a1.getparentfoldername("e:\han\bin")
Set a3=a1.createtextfile("e:\han\new.txt",true)
a3.writeline("the parentname is '"&s&"'")
希望返回han这个名称,但总是提示:缺少对象: '[string: "e:\han"]'
这是什么意思,是createfolder不能这样用吗,不太明白,希望大家指点sdlkfj5
作者: vincenthan    时间: 2007-8-7 18:06
在e盘中已经存在han文件夹
作者: winfood    时间: 2007-8-7 21:10
原帖由 vincenthan 于 2007-8-7 18:04 发表
我输入如下代码:
Dim a1,a2,a3,s
Set a1=createobject("scripting.filesystemobject")
Set a2=a1.createfolder("e:\han\bin")
Set s=a1.getparentfoldername("e:\han\bin")
Set a3=a1.createtextfile("e: ...

代码的第4行语句不应该用Set,因为GetParentFolderName返回值类型是字符串而不是对象。
VBScript的这种特性是我很不喜欢的地方,一般类型直接用等号赋值而对象类型要额外加上Set。一不小心就写错了
作者: wuzhuayu    时间: 2007-8-7 21:19
学习了,呵呵。sdlkfj3
作者: vincenthan    时间: 2007-8-8 16:42
thank yousdlkfj2
作者: gzj_06    时间: 2007-8-8 17:04
学习了,只要用Set赋值,就会认为s是对象,但s是字符串,所以会报错
作者: DeViLIvy    时间: 2007-8-8 20:22
学习了,感谢winfood的回答
作者: Ronn    时间: 2007-8-9 00:02
学习中,顶一下!




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2