2

Я использую runas /user:abc cmd для запуска командной строки. После входа в систему я буду запускать скрипт vbs.

У логина abc есть специальное разрешение на доступ к файлу / папке, и это основная причина использования runas. В противном случае сценарий VBS не будет работать из-за отсутствия разрешения

Как в этом сеансе командной строки получить имя пользователя, запустившего команду runas? Я хочу записать эту информацию в мой скрипт VBS.

В качестве примера, скажем, мой идентификатор «Аконг». После того, как я запустил командную строку как «abc» с runas, я хочу иметь возможность выводить «akong» так или иначе.

3 ответа3

0

AFAIK, вам нужно будет отправить эту информацию в сценарий.

пример:

runas /user:abc program.exe% username%

Я предполагаю, что env будет расширен до обработки команды ... но у меня нет возможности проверить это в данный момент.

0

до тех пор, пока вы не используете /noprofile в качестве переключателя для runas, будет загружаться профиль пользователя abc. Вы можете просто напечатать

кто я

в командной строке и он вернет имя домена \abc

или из VBScript:

Установите objNet = CreateObject("WScript.NetWork")

strInfo = "Имя пользователя" & objNet.UserName & vbCRLF & _ "Имя компьютера" & objNet.ComputerName & vbCRLF & _ "Доменное имя" & objNet.UserDomain

MsgBox strInfo

0

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

Set

В нем перечислены все данные пользователя 'abc' и ни одного пользователя 'akong'.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .