AFAIK você precisaria enviar essas informações para o script.
exemplo:
runas / user: abc program.exe% username%
Eu estou supondo que o env será expandido antes que o comando seja processado ... mas não tenho como verificar isso no momento.
Eu uso runas /user:abc cmd
para iniciar um prompt de comando. Após o login, vou executar um script vbs.
O login abc tem permissão especial de arquivo / pasta e é o principal motivo para usar runas. Caso contrário, o script vbs não funcionará devido à falta de permissão
Dentro desta sessão de prompt de comando, como posso obter o nome de usuário que iniciou o comando runas? Eu quero registrar essa informação dentro do meu script vbs.
Como exemplo, digamos que meu id seja 'akong'. Depois de iniciar o prompt de comando como 'abc' com runas, quero poder imprimir 'akong' de uma forma ou de outra.
AFAIK você precisaria enviar essas informações para o script.
exemplo:
runas / user: abc program.exe% username%
Eu estou supondo que o env será expandido antes que o comando seja processado ... mas não tenho como verificar isso no momento.
contanto que você não use / noprofile como um switch para runas, o perfil do usuário abc será carregado. Você pode simplesmente digitar
whoami
na linha de comando e retornará nome_do_domínio \ abc
ou no VBScript:
Set objNet = CreateObject("WScript.NetWork")
strInfo = "User Name is " & objNet.UserName & vbCRLF & _ "Computer Name is " & objNet.ComputerName & vbCRLF & _ "Domain Name is " & objNet.UserDomain
MsgBox strInfo
Estou começando a achar que não é possível obter o nome do usuário original. Na linha de comando eu tentei
Set
Ele lista todos os detalhes do usuário 'abc' e nenhum usuário 'akong'.
Tags windows-7 windows-xp runas