的OpenTextFile在远程计算机上
问题描述:
我想使用此代码读取远程文本文件:的OpenTextFile在远程计算机上
function defdate(ipaddress)
deffilePath = chr(34) & "\\" & ipaddress & "\c$\" & deffileName & chr(34)
wscript.echo deffilePath
set deffile = objFSO.OpenTextFile(deffilePath)
do while not deffile.endofstream
s=deffile.readline
wscript.echo s
loop
deffile.close
end function
下面我deffilePath扩展到字符串是这样的:
"\\10.211.19.207\c$\Program Files\Common Files\Symantec Shared\VirusDefs\definfo.dat"
不过,我得到“Microsoft VBScript运行时错误:错误的文件名或编号”。
可能是什么问题?
答
您不需要(请阅读:“不得”)将您的路径用引号引起来。
deffilePath = "\\" & ipaddress & "\c$\" & deffileName
答
我认为你需要在UNC路径名开始时使用两个反斜杠。尝试添加另一个!
我的猜测是它可以与“\\ 10.211.19.207 \ c $ \ Program Files \ Common Files \ Symantec Shared \ VirusDefs \ definfo.dat”一起工作。
答
你试过在最后删除chr(34)吗?
答
您只需要在使用命令行或类似的API时包含引号(CHR(34))。如果一个方法只需要一个文件名,就把它们放在外面。
答
问题是“chr(34)”在开始和结束。在Windows运行菜单中输入路径时,需要使用这些引号,但是当将路径传递给像这样的函数调用时,您不需要它们。
c $不是问题吗? – RvdK 2009-02-10 13:36:29
不,问题是缺少反斜杠。 “c $”是Windows默认为“c:”驱动器创建的隐藏共享的名称。 – andynormancx 2009-02-10 13:39:03
Andy,反斜杠不会丢失 - 这是渲染问题。 – 2009-02-10 13:41:05