現在外部のbatをたたいてシェーダをコンバートするプログラムを作成しています。
シェーダのコンバートの際のエラー出力を確認したいと考え以下の処理を追加したのですが、
以下の部分が読み込まれるとエラーも起こらずハング、固まります。
二日かけて問題の特定すら(問題と思っていた部分がことごとく違った)できていません。
改善方法があればよろしくお願いします。
ProcessStartInfo process = new ProcessStartInfo();
process.FileName = CONPAIL_BAT_PATH;
process.Arguments = filePath;
process.CreateNoWindow = true; // コンソール・ウィンドウを開かない process.UseShellExecute = false;// シェル機能を使用しない textBox2.Text += string.Format("{0} をコンバートしました。" + Environment.NewLine, fileName); process.RedirectStandardOutput = false; process.RedirectStandardError = true;// エラー出力をリダイレクト process.RedirectStandardInput = false; Process st = Process.Start(process); st.ErrorDataReceived += st_ErrorDataReceived; st.BeginErrorReadLine(); st.WaitForExit(); st.Dispose(); // 子プロセスの破棄 st.Close(); textBox2.Text += textInput; textBox2.Text += "" + Environment.NewLine;
あなたの回答
tips
プレビュー