оболочка Windows - как определить текущее местоположение файла сценария? - PullRequest
1 голос
/ 22 февраля 2010

Я пробую файл оболочки Windows, который будет вставлен в папку, в которой он будет анализировать содержимое папок.

Теперь я хотел бы знать, как я могу определить текущий путь? то есть место, где VBS-файл размещен с использованием FileSystemObject?

Set objFSO = CreateObject ("Scripting.FileSystemObject")

Ответы [ 3 ]

3 голосов
/ 22 февраля 2010
Set objFS = CreateObject("Scripting.FileSystemObject")
WScript.Echo objFS.GetParentFolderName(WScript.ScriptFullName)
2 голосов
/ 22 февраля 2010

Вы можете получить это от WScript.ScriptFullName. Просто удалите имя файла с конца (бит после последней обратной косой черты). Я обычно использую JScript для сценариев, но IIRC VBScript имеет функцию InStrRev, которая поможет вам найти последний обратный слеш. Или: Создайте объект File для пути WScript.ScriptFullName, а затем используйте его свойство ParentFolder. Что-то вроде (не проверено):

Dim objFSO
Dim objFile
Dim objFolder

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile(WScript.ScriptFullName)
Set objFolder = objFile.ParentFolder
1 голос
/ 22 февраля 2010

Чтобы получить полный путь только без расширения, я использую Replace(WScript.ScriptFullName, WScript.ScriptName, ""), чтобы просто получить путь к файлу

...