Есть три варианта:
- Pass команды в
cmd.exe
при запуске он
- Отправить команды для
cmd.exe
после того, как начал
- Запись командного файла или PowerShell скрипт
Передача запятой НСР в cmd.exe
, когда вы начинаете его
Для передачи команд cmd.exe
вы можете использовать -k
или -c
параметры cmd.exe
.
Например, это начнет cmd.exe
, отображать зарегистрированный пользователь, а затем завершить процесс cmd.exe
:
cmd.exe /c "whoami"
Посмотрите на this page или Google для большего количества примеров.
Отправить команды для cmd.exe
после того, как начал
Альтернативой является первым начать cmd.exe
, а затем отправлять команды на него. Об этом уже довольно много, но обычно есть два подхода:
- Отправлять по одному ключу за раз, например. How can I send keypresses to a running process object?
- Отправлять данные во входной буфер процесса, например. .NET: Inject Data into Input-Buffer of Process
Я не уверен, что они будут работать с cmd.exe
.
Написание пакетный файл или сценарий PowerShell
Более общий подход к автоматизации cmd.exe
, чтобы написать командный файл или сценарий PowerShell. Вы также можете рассмотреть эти варианты.
Ваша ссылка для «Отправить данные во входной буфер процесса» имеет решение Visual Basic. Что-нибудь в C#? –
Если вам сложно преобразовать код вручную, google для инструмента преобразования VB.NET в C#. –
А, так что вы тоже не отвечаете на мой вопрос. –