Как получить полный путь для файла в VBScript?

Я использую объект Shell.Application, который позволяет мне создавать script zip файл.

Но для того, чтобы это сработало, мне нужен полный путь к zip файлу. File.zip не работает. Мне нужно c:\the\full\path\file.zip, даже если script работает в той же директории, где находится файл.

Как я могу получить полный путь к файлу в VBScript?

Что-то вроде расширения %~fI в оболочке cmd.exe.

Ответы

Ответ 1

В Scripting.FileSystemObject существует метод GetAbsolutePathName что делает это.

Это то, что сработало для меня:

Dim folderName
folderName = "..\.."

Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")

Dim fullpath
fullpath = fso.GetAbsolutePathName(folderName)

WScript.Echo "folder spec: " & folderName
WScript.Echo "fullpath:    " & fullpath

Ответ 2

Например

Set objFS=CreateObject("Scripting.FileSystemObject")
Set objArgs = WScript.Arguments
strFile= objArgs(0)
Set objFile = objFS.OpenTextFile(strFile)
Set objFile = objFS.GetFile(strFile)
WScript.Echo objFile.Path 

в командной строке

c:\test> cscript //nologo myscript.vbs myfile