ОБСУЖДЕНИЕ Проблема 

Передать параметры в cmd

7 ответов 4,5 тыс.
AI-выжимка обсуждения скоро

Краткие тезисы обсуждения со ссылками на ключевые ответы появятся здесь.

Автор темы
Стоит задача сделать исполняемый файл который сможет принимать параметры и передовать их в cmd
prog.exe -ping 8.8.8.8 -t

prog.exe должен передать параметр ping 8.8.8.8 -t в cmd

нагуглил что можно провернуть это с помощью ShellExecute

помогите примером, пожалуйста.
 
  • Нравится
Реакции: Vertigo
1
  • Нравится
Реакции: Vander
1
Форум программистов и сисадминов Киберфорум
Воспользуйся поиском. Там уже 500 примеров написано за тебя, если самому гуглить и писать лень.
зачем тогда тут ветка на нашем форуме для того чтобы отсылать в гугл и сторонние форумы? вроде по теме задал вопрос.
 
  • Нравится
Реакции: Vertigo
1
Код:
using System;
using System.IO;
using System.Diagnostics;

public class Test

{
  public static void Main()
  {

    // создаем процесс cmd.exe с параметрами "ipconfig /all"
    ProcessStartInfo psiOpt = new ProcessStartInfo(@"cmd.exe", @"/C ipconfig /all");
    // скрываем окно запущенного процесса
    psiOpt.WindowStyle = ProcessWindowStyle.Hidden;
    psiOpt.RedirectStandardOutput = true;
    psiOpt.UseShellExecute = false;
    psiOpt.CreateNoWindow = true;

    // запускаем процесс
    Process procCommand = Process.Start(psiOpt);

    // получаем ответ запущенного процесса
    StreamReader srIncoming = procCommand.StandardOutput;

    // выводим результат
    Console.WriteLine(srIncoming.ReadToEnd());

    // закрываем процесс
    procCommand.WaitForExit();
    Console.ReadKey();
  }
}
 
  • Нравится
Реакции: Vertigo и Bypass
2
А параметры аргумента передай в переменной на пользовательский ввод например
Это я думаю и сам нагуглишь.
 
Код:
using System;
using System.IO;
using System.Diagnostics;

public class Test

{
  public static void Main()
  {

    // создаем процесс cmd.exe с параметрами "ipconfig /all"
    ProcessStartInfo psiOpt = new ProcessStartInfo(@"cmd.exe", @"/C ipconfig /all");
    // скрываем окно запущенного процесса
    psiOpt.WindowStyle = ProcessWindowStyle.Hidden;
    psiOpt.RedirectStandardOutput = true;
    psiOpt.UseShellExecute = false;
    psiOpt.CreateNoWindow = true;

    // запускаем процесс
    Process procCommand = Process.Start(psiOpt);

    // получаем ответ запущенного процесса
    StreamReader srIncoming = procCommand.StandardOutput;

    // выводим результат
    Console.WriteLine(srIncoming.ReadToEnd());

    // закрываем процесс
    procCommand.WaitForExit();
    Console.ReadKey();
  }
}
ipconfig /all - как его передать по средствам параметра который будет указан при запуске исполняемого файла?
тоесть launcher.exe - ipconfig /all
 
А ветка на форуме создана для нетривиальных вопросов.Ну так прочитай про аргументы - вариантов то вагон.
Хоть в переменную загони Пользовательский ввод с консоли.
Command-Line Arguments (C# Programming Guide)

Нет серьезно, вопрос в стиле - Напишите за меня!
 
  • Нравится
Реакции: Vertigo
1
А ветка на форуме создана для нетривиальных вопросов.Ну так прочитай про аргументы - вариантов то вагон.
Хоть в переменную загони Пользовательский ввод с консоли.
Command-Line Arguments (C# Programming Guide)

Нет серьезно, вопрос в стиле - Напишите за меня!
да ладно тебе не ругайся ) благодарю за помощь
 
  • Нравится
Реакции: Vertigo
1