2017-09-24 7 views
0

私は自分のゲームのランチャーを作ろうとしています。バックグラウンドで音楽プレーヤーを追加したいのですが、処理を開始するとすぐに失敗します。すべてのヘルプは高く評価されc#コンソールのアプリケーションをwinフォームで起動する

private void btnStartMusic_Click(object sender, EventArgs e) 
{ 
    ProcessStartInfo proc = new 
    ProcessStartInfo("MusicPlayer\\MemequickieMusicPlayer.exe"); 
    proc.CreateNoWindow = true; 
    proc.WindowStyle = ProcessWindowStyle.Hidden; 
    proc.RedirectStandardError = false; 
    proc.RedirectStandardInput = false; 
    proc.RedirectStandardOutput = false; 
    proc.UseShellExecute = false; 
    Process.Start(proc); 
} 

コード。

+0

情報が不足しているかどうかを確認してください。 – MemesTV

+0

エラーメッセージを共有するように気をつけますか? – Isma

+0

瞬時に存在するので、エラーメッセージが表示されません。 – MemesTV

答えて

3

exeへのフルパスを使用して作業ディレクトリを設定してみてください。 exeファイルと仮定すると、あなたの実行可能なフォルダにあります。

string path = Path.Combine(Application.StartupPath, "MusicPlayer"); 

ProcessStartInfo proc = new 
    ProcessStartInfo(Path.Combine(path, "MemequickieMusicPlayer.exe")); 

proc.WorkingDirectory = path; 

エラーが解消されないと、あなたが出力をデバッグしたい、変更した場合:

proc.RedirectStandardOutput = true; 

このようなプロセスを作成します。

Process process = new Process(proc); 
process.Start(); 

while (!process.StandardOutput.EndOfStream) { 
    System.Diagnostics.Debug.Write(process.StandardOutput.ReadLine()); 
} 

出力ウィンドウに出力が表示されるはずです。

+0

私は少し違ったことをしましたが、これを参考にしました。手伝ってくれてありがとう。 – MemesTV

関連する問題