我有一个非常简单的脚本,它只打印当前目录。这就是代码:
set WshShell = WScript.CreateObject("WScript.Shell")
Wscript.Echo (WshShell.CurrentDirectory)
此脚本从.exe
文件调用。它工作正常,直到调用可执行文件直接运行。如果我创建一个exe文件的链接并启动它,那么它运行我的.vbs
并打印链接目录,而不是.exe
本身!我该如何解决这个问题?
答案 0 :(得分:1)
从FileSystemObject获取帮助,( vbscript示例):
scriptdir=CreateObject("Scripting.FileSystemObject").GetParentFolderName(WScript.ScriptFullName)
Wscript.Echo scriptdir
答案 1 :(得分:0)
好吧,也许它有些笨拙,但我发现了一个可行的解决方案。这个想法很简单:获取完整的脚本名称和简短的脚本名称。然后从第一个中减去第二个。
set WshShell = WScript.CreateObject("WScript.Shell")
Wscript.Echo (Left(WScript.ScriptFullName, Len(WScript.ScriptFullName) - Len(WScript.ScriptName)))