Изменение текущего каталога FileSystemObject - PullRequest
8 голосов
/ 27 октября 2009

При использовании FileSystemObject вы можете ссылаться на каталог, из которого был запущен скрипт, используя путь ".". Можно ли изменить то, что FileSystemObject считает текущим каталогом, чтобы вы могли использовать «.» синтаксис пути для других каталогов?

Пример:

Set fso = CreateObject("Scripting.FileSystemObject")  
Set f1 = fso.GetFolder(".") ' Returns the current directory  
Set f2 = fso.GetFolder(".\backup") ' Returns the "backup" directory under the current directory

В качестве упрощенного примера, существует ли метод для вызова fso, так что вызов fso.GetFolder (".") Возвращает каталог резервной копии?

Ответы [ 2 ]

13 голосов
/ 27 октября 2009

Вы можете изменить текущую рабочую папку для вашего скрипта, используя свойство WshShell.CurrentDirectory:

Dim oShell : Set oShell = CreateObject("WScript.Shell")
oShell.CurrentDirectory = ".\backup"

А вот и Привет, сценарист! статья на эту тему: Как изменить рабочую папку скрипта?

2 голосов
/ 27 октября 2009

Не в общем.

Но почему бы не найти текущую папку и не сохранить ее:

Set fso = CreateObject("Scripting.FileSystemObject")
currentPath = fso.GetAbsolutePathName(".")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...