Использование Process для запуска старых программ со скрытым окном - PullRequest
0 голосов
/ 23 сентября 2019

У меня есть пара старых программ для Windows, которые нам еще нужно использовать.Обе программы предназначены для запуска из командных файлов с параметрами командной строки, поэтому использование Process для запуска и мониторинга их работает нормально.

Обе программы отображают окна выполнения после запуска, и я хотел бы скрыть эти окна, но они не кажутсячтобы ответить на настройку процесса, отображающую окно управления.

enter image description here

ProcessStartInfo info = new ProcessStartInfo() {
    FileName = appName,
    Arguments = arguments,
    RedirectStandardError = true,
    RedirectStandardOutput = true,
    WorkingDirectory = workingDirectory,
    UseShellExecute = false,
    CreateNoWindow = true,
    WindowStyle = ProcessWindowStyle.Hidden
};

StringBuilder errorData = new StringBuilder(OUTPUT_SIZE);
StringBuilder outputData = new StringBuilder(OUTPUT_SIZE);

using (Process process = new Process { StartInfo = info }) {
    process.ErrorDataReceived += new DataReceivedEventHandler((sender, e) => ErrorDataReceived(sender, e, errorData));
    process.OutputDataReceived += new DataReceivedEventHandler((sender, e) => OutputDataReceived(sender, e, outputData));

    if (exited != null) {
        process.EnableRaisingEvents = true;
        process.Exited += exited;
    }

    process.Start();
    process.BeginErrorReadLine();
    process.BeginOutputReadLine();
} 

Есть ли другой способ заставить окно скрыться или мне просто нужноиспользовать их такими, какие они есть?Я выполнил кучу поисков, но все ответы, которые я нашел, просто использовали некоторые варианты кода выше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...