@haqz

Как написать программу которая будет запускать другу программу?

Помогите пожалуйста найти пример кода который бы запускал .exe файл с параметром:

Алгоритм:
1. Чтение параметра из файла

2. Командная строка которую нужно выполнять много раз(с каждым параметром из файла 1 раз):
myfile.exe -1 -hhhh -h -ПАРАМЕТР И ФАЙЛА(zzzzzz)

3. Таймер 10 минут, потом выключение запущенного myfile.exe

4. Если в файле остались параметры с которым не была запущена программа возврат к шагу 2, если все параметры уже были запущены то Happy End и программа закончила работу.

Содержание файла с параметрами:

aaaaaa
bbbbbb
ccccccc
dddddd
..........
zzzzzz

Помогите пожалуйста ?
  • Вопрос задан
  • 903 просмотра
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
Самое простое решение, содержимое файла start.bat:
@echo off
for /f %%a in (1.txt) do (
   echo Starting 'myfile.exe' with '%%a' argument...
   start myfile.exe -1 -hhhh -h -%%a
   echo started, waiting...
   timeout 600
   echo killing started application 'myfile.exe'...
   taskkill /im myfile.exe
   echo OK!
)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Pyperdok
@Pyperdok
using System;
using System.Diagnostics;

namespace Example
{
    class Program
    {
        static void Main(string[] args)
        {
            if(args[0] == "-first")
            {
                Console.WriteLine("First Run");
                Process second_procces = new Process();
                second_procces.StartInfo.UseShellExecute = true;
                second_procces.StartInfo.FileName = @"Example.exe";
                second_procces.StartInfo.Arguments = "-second";
                second_procces.Start();
            }
            else if(args[0] == "-second")
            {
                Console.WriteLine("Second Run");
                Console.ReadLine();
            }
        }
    }
}

Для запуска нового процесса используйте класс Process и там же указывайте аргументы. через
StartInfo.Arguments = "ARGUMENT NAME"
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы