VB.NET を使用して C/C++ 用の IDE の開発に取り組んでいます。ユーザーが「コンパイル」メニュー項目をクリックしたときにプログラムがコンパイルされていることを確認し、エラーを GUI にリダイレクトする必要があります。私は次のコードを書いた
Private Sub CompileToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CompileToolStripMenuItem.Click
Dim comp As New Process
comp.StartInfo.FileName = "C:\MinGW\bin\gcc.exe"
comp.StartInfo.Arguments = tabc.SelectedTab.Text
comp.StartInfo.RedirectStandardOutput = True
comp.StartInfo.UseShellExecute = False
comp.Start()
Dim msg As String = comp.StandardOutput.ReadToEnd
MsgBox(msg)
comp.WaitForExit()
comp.Close()
End Sub
送信される引数は、ファイルの絶対パスです (tabc は TabControl で、複数の TabPages が TabControl に追加されます)。しかし、コンパイルしようとすると、プロセスが開始されたことを示す空白のコンソール ウィンドウが表示されますが、ファイルはコンパイルされません。環境変数の「PATH」変数をMinGWのbinフォルダーに設定しましたが、それでも違いはありません。CMD から手動でプログラムをコンパイルしようとすると、プログラムがなく、gcc が正常に動作します。私のコードに問題はありますか?