инструкции ошиблись и были исправлены. Вот использование для runas
:
RUNAS USAGE:
RUNAS [ [/noprofile | /profile] [/env] [/savecred | /netonly] ]
/user:<UserName> program
RUNAS [ [/noprofile | /profile] [/env] [/savecred] ]
/smartcard [/user:<UserName>] program
RUNAS /trustlevel:<TrustLevel> program
обратите внимание, что во всех трех вариантах вы можете указать только программу для запуска, ничего больше. Они подразумевают это:нельзя указывать аргументы программы в виде отдельных слов. любые аргументы должны быть встроены в строку "program" с окружающими кавычками.
также не ясно, что runas
не пропустит течение каталоги; он всегда начинается с C:\Windows\System32
. Поэтому любая указанная вами программа должна быть либо в PATH
каталог или полный путь. Нельзя использовать относительный путь. И конечно, любой ACL на том, что исполняемый файл или директорий на своем пути должны обеспечить доступ пользователем, вы хотите, чтобы запустить его.
хорошая новость в том, что runas
примет .cmd
файл как "программа".
как практический вопрос, что это означает, что делать то, что вы хотите, вы, вероятно, хотите создать .cmd
файл в каталоге, к которому могут получить доступ оба пользователя, а затем передать полный путь. Например:
runas /u:Fred "C:\Users\Public\foo.cmd"
последняя морщинка в том, что runas
может запускать программу от имени другого пользователя, но не может повышать уровень прав. Нет никакого способа заставить его генерировать приглашение UAC. Если вы хотите запустить что-то "от имени администратора" с помощью runas
, вам придется включить встроенную учетную запись администратора, который всегда работает с повышенными привилегиями, и укажите этого пользователя имя.
если это не сработает для вас, и вам нужна обобщенная способность передавать аргументы и / или текущие каталоги, или если вам нужно запустить что-то с повышенными правами, кроме администратора, вам понадобится подлинный su
, как этот.