Как запустить HTA как другой пользователь через VBS

Я пытаюсь запустить HTA через скрипт VBS с моей учетной записью домена (и он запрашивает у меня

Скрипт и hta будут находиться в одном каталоге на флеш-диске, поэтому код должен указывать на текущий каталог скрипта.

Приведенный ниже код в настоящее время запускает hta из каталога скриптов, но я не могу передать имя пользователя (например, домен / имя пользователя), чтобы запустить hta от имени другого пользователя

Set objShell = CreateObject("Shell.Application")
Set FSO = CreateObject("Scripting.FileSystemObject")
strPath = FSO.GetParentFolderName (WScript.ScriptFullName)
If FSO.FileExists(strPath & "\main.HTA") Then
     objShell.ShellExecute "mshta", Chr(34) & strPath & "\main.HTA" & Chr(34), "", "runas", 1
Else
     MsgBox "Error - HTA was not found"
End If

Как я могу сохранить имя пользователя (и / или пароль) в качестве переменных и передать его в runas-часть скрипта, чтобы запустить HTA с другими учетными данными пользователя?

РЕДАКТИРОВАТЬ:

Вот пакетный файл, эквивалентный тому, что я пытаюсь сделать:

runas /user:domain\username "c:\windows\system32\mshta.exe \"\main.hta\

1 ответ

Решение

Текущее имя пользователя вы можете получить с помощью приведенного ниже кода, я думаю, что пароли не могут быть получены никаким способом.

Set network = CreateObject("WScript.Network")
currentUser = network.userName
Другие вопросы по тегам