Я пытаюсь настроить autologon.exe с помощью командной строки (через PsExe c). Однако специальные символы в пароле вызывают проблемы.
Учитывая этот пароль: I'vegotspe"cia"char@ters
Эта команда работает:
Start-Process 'C:\Autologon.exe' -ArgumentList 'username','hostname','"I''vegotspe\"cia\"char@ters"','/accepteula'
Однако, поскольку я использую PsExe c, мне нужно выполнить вызов с помощью «/ c», поэтому у меня есть следующая команда.
powershell.exe /c "Start-Process 'C:\Autologon.exe' -ArgumentList 'username','hostname','"I''vegotspe\"cia\"char@ters"','/accepteula'"
Эта команда не выводит никаких ошибок, но она тоже не работает. Это работает, если у меня нет двойных кавычек. Есть идеи, как я могу заставить это работать?
Я использую PyPsexe c поэтому, как только я получу указанную выше команду, работаю; вызов будет выглядеть так:
c.run_executable("powershell.exe", arguments=''' /c Start-Process 'C:\Autologon.exe' -ArgumentList 'username','hostname','"I''vegotspe\"cia\"char@ters"','/accepteula' ''')
UPDATE 1: Просто попробовал EncodedCommand, как предложил @lit, но у меня, похоже, такая же проблема с синтаксисом, поскольку ее нужно заключить в кавычки.
КОМАНДА:
[Convert]::ToBase64String([System.Text.Encoding]::Unicode.GetBytes("Start-Process 'C:\Autologon.exe' -ArgumentList 'username','hostname','"I''vegotspe\"cia\"char@ters"','/accepteula'"))
ВЫХОД:
ine:1 char:140
+ ... ess 'C:\Autologon.exe' -ArgumentList 'username','hostname','"I''vegot ...
+ ~
Missing ')' in method call.
At line:1 char:140
+ ... username','hostname','"I''vegotspe\"cia\"char@ters"','/accepteula'"))
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Unexpected token 'I''vegotspe\"cia\"char@ters"','/accepteula'"' in expression or statement.
At line:1 char:184
+ ... username','hostname','"I''vegotspe\"cia\"char@ters"','/accepteula'"))
+ ~
Unexpected token ')' in expression or statement.
At line:1 char:185
+ ... username','hostname','"I''vegotspe\"cia\"char@ters"','/accepteula'"))
+ ~
Unexpected token ')' in expression or statement.
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : MissingEndParenthesisInMethodCall