UseShellExecute не может найти файл - PullRequest
1 голос
/ 12 марта 2012
    public void BuildMod()
    {
        var startIngo = new ProcessStartInfo();
        startIngo.WorkingDirectory = ModBuilderLoc;
        startIngo.FileName = "ModPack Builder.exe";
        startIngo.Arguments = "\"" + 
                 LoadedMod.Directory.Substring(Folders.MyDocuments.Length + 28)
                 + "\"" + " " + "true";
        startIngo.WindowStyle = ProcessWindowStyle.Normal; //TODO: Set to hidden
        //startIngo.UseShellExecute = false;
        //startIngo.RedirectStandardOutput = true;
        try
        {
            Process proc = new Process();
            proc.StartInfo = startIngo;
            proc.Start();
            //proc.StandardOutput.ReadLine();
            proc.WaitForExit();
            MessageBox.Show("Build successful", "Build Info"); 
        }
        catch (Win32Exception)
        {
            MessageBox.Show("Could not find \"ModPack Builder.exe\" in \"" 
                         + ModBuilderLoc +"\", change from menu bar");
        }
    }

Это прекрасно работает, если я не раскомментирую комментарии, что заставляет программу читать первую строку в консоли моей программы.

Когда комментарии не комментируются, обнаруживается исключение Win32, которое я не хочу получить.

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