2009-02-10 167 views
0

我想使用此代碼讀取遠程文本文件:的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運行時錯誤:錯誤的文件名或編號」。
可能是什麼問題?

+0

c $不是問題嗎? – RvdK 2009-02-10 13:36:29

+0

不,問題是缺少反斜槓。 「c $」是Windows默認爲「c:」驅動器創建的隱藏共享的名稱。 – andynormancx 2009-02-10 13:39:03

+0

Andy,反斜槓不會丟失 - 這是渲染問題。 – 2009-02-10 13:41:05

回答

1

您不需要(請閱讀:「不得」)將您的路徑用引號引起來。

deffilePath = "\\" & ipaddress & "\c$\" & deffileName 
-1

我認爲你需要在UNC路徑名開始時使用兩個反斜槓。嘗試添加另一個!

我的猜測是它可以與「\\ 10.211.19.207 \ c $ \ Program Files \ Common Files \ Symantec Shared \ VirusDefs \ definfo.dat」一起工作。

0

你試過在最後刪除chr(34)嗎?

1

您只需要在使用命令行或類似的API時包含引號(CHR(34))。如果一個方法只需要一個文件名,就把它們放在外面。

1

問題是「chr(34)」在開始和結束。在Windows運行菜單中輸入路徑時,需要使用這些引號,但是當將路徑傳遞給像這樣的函數調用時,您不需要它們。