2013-01-31 21 views
0

我是C#初學者的錯誤,我已經做了一個遊戲,並啓動它,我使用這個按鈕事件有點發射:C#明確地扔上的Process.Start()

private void button5_MouseClick(object sender, MouseEventArgs e) 
    { 
     Process.Start("engine.exe", "/load /config debug"); 
     Application.Exit(); 
    } 

正如你所看到的,這也使用Application.Exit()在遊戲開始時關閉啓動器,因爲它們是分開的。

我想知道的是,如果我的方法是很好的開始遊戲,超近距離發射器和也,

我想知道如何使一個彈出消息說「Engine.exe找不到」時我點擊了按鈕,engine.exe丟失。

謝謝!

+0

你看過使用WaitForExit()方法嗎?也找到找不到的引擎你需要做一個if(File.Exist(path + engine.exe)){}如果沒有找到,那麼做MessageBox.Show(「你的自定義信息」); – MethodMan

+0

@DJKRAZE他希望發射器退出。 –

+0

Application.Exit()不會引發Form.Closed和Form.Closing事件。如果你在這些事件中有代碼,你應該調用Form.Close方法。當然,如果你的啓動器是一個沒有特殊資源的簡單表單,在關閉時免費,你可以去Application.Exit() – Steve

回答

4
try 
{ 
    Process.Start("engine.exe", "/load /config debug"); 
    Application.Exit();  
} 
catch(FileNotFoundException e) 
{ 
    MessageBox.Show(e.Message); 
} 
+0

謝謝@DJKRAZE你的方法工作得很好:) – Dan