0

我需要读取一个 txt 文件,但我没有路径。文本文件是我正在运行的脚本路径之前的两个目录。我想我可以使用“WScript.ScriptFullName”,然后只使用一个 instrRev 并让它在“/”处拆分 str。但它不起作用你们能帮我解决这个问题吗?我必须在多台计算机上运行它,因此路径会更改,但文本文件将始终是脚本路径上方的两个错误

到目前为止我的代码

Dim strScriptPath
strScriptPath = Replace(WScript.ScriptFullName, WScript.ScriptName, "")
WScript.Echo strScriptPath
WScript.Echo(WScript.ScriptFullName)
Dim DashRev
DashRev = instrRev(WScript.ScriptFullName, "/")
wscript.echo DashRev
4

2 回答 2

1

首先替换"/""\"

然后尝试以下。这似乎对我有用:

Dim strScriptPath
strScriptPath = Replace(WScript.ScriptFullName, WScript.ScriptName, "")
WScript.Echo strScriptPath
WScript.Echo(WScript.ScriptFullName)
Dim first, sec
first = instrRev(strScriptPath, "\",Len(strScriptPath)-1)
sec = instrRev(WScript.ScriptFullName, "\",first-1)
wscript.Echo "parent = " & Left(strScriptPath,sec)

这个想法strScriptPath总是会结束"\"并且将通过使用比路径长度小一的起始位置first来排除它。instrrev本质上与sec.

于 2013-11-06T23:38:22.283 回答
0
Set FSO = WScript.CreateObject("Scripting.FileSystemObject")
WScript.Echo FSO.GetFile(WScript.ScriptFullName).ParentFolder.ParentFolder.ParentFolder.Path
于 2013-11-07T12:42:01.800 回答