Чтобы получить путь к папке профиля пользователя (например, C: \ Documents and Settings \ в Windows XP или C: \ Users \ в Windows Vista), вы можете выполнить любое из следующих действий:
Оценка переменной среды USERPROFILE
с использованием метода WshShell.ExpandEnvironmentStrings
:
Set oShell = CreateObject("WScript.Shell")
strHomeFolder = oShell.ExpandEnvironmentStrings("%USERPROFILE%")
Получить путь к папке, используя метод Shell.Namespace
:
Const ssfPROFILE = &H28
Set oShell = CreateObject("Shell.Application")
strHomeFolder = oShell.NameSpace(ssfPROFILE).Self.Path
Если вам нужен путь к папке с данными приложения (например, C: \ Documents and Settings \ \ Application Data в Windows XP или C: \ Пользователи \ \ AppData \ Roaming в Windows Vista) могут использовать аналогичный код:
Set oShell = CreateObject("WScript.Shell")
strHomeFolder = oShell.ExpandEnvironmentStrings("%APPDATA%")
''# or
Const ssfAPPDATA = &H1A
Set oShell = CreateObject("Shell.Application")
strHomeFolder = oShell.NameSpace(ssfAPPDATA).Self.Path
Чтобы добавить имя папки к пути, вы можете просто использовать конкатенацию строк следующим образом:
strMedMaintFolder = strHomeFolder & "\MedMaint"
В случае, если ваш скрипт содержит много конкатенаций путей, я предлагаю использовать метод FileSystemObject.BuildPath
, поскольку он позаботится о разделителях путей (\
) для вас:
Set oFSO = CreateObject("Scripting.FileSystemObject")
strMedMaintFolder = fso.BuildPath(strHomeFolder, "MedMaint")