Проблемы с запуском консольного приложения C ++ из C # GUI - PullRequest
0 голосов
/ 16 июля 2011

Я пытаюсь выполнить консольное приложение, разработанное на C ++, хотя в C #, когда я использую такой метод, как:

private void StartProcess()
{
Process.Start("consoleapp.exe");
}

Оно не появляется или даже не кажется выполненным, не генерируются исключения и т.д.

Есть ли лучший способ сделать это?

Ответы [ 2 ]

0 голосов
/ 16 июля 2011

Да, попробуйте сделать это так,

using System;
using System.Diagnostics;

class ProcessStart{
    static void Main(string[] args){

        Process sample = new Process();

        sample.StartInfo.FileName   = "sample.exe";
        sample.Start();
    }
}

код ключа находится в главной функции, просто убедитесь, что исполняемый файл находится в том же каталоге, и включите

using System.Diagnostics; 

вверху.

этот код работает для меня и кажется наиболее правильным способом. надеюсь, я помог.

    Process sample = new Process();

    sample.StartInfo.FileName   = "sample.exe";
    sample.Start();

просто измените образец процесса на желаемый, чтобы образец мог быть желаемым.

Вы также можете передавать аргументы в exe, используя это.

sample.StartInfo.Arguments = "sample argument";

просто поставьте это перед запуском exe-части.

надеюсь, что я помог:)

0 голосов
/ 16 июля 2011

Является ли consoleapp.exe в том же каталоге, что и исполняемый файл c #, или в пути?

Хорошее описание того, как это сделать, приведено в следующей статье:

Как: выполнить командную строку в C #, получить результаты STD OUT

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