2013-01-20 163 views
0

我有一個應用程序,我想隱藏而不是關閉以便在後臺運行。如果我隱藏它,當我重新啓動應用程序時,如何在取消隱藏/重新激活當前正在運行的應用程序時終止新實例?我可以終止當前的實例;取消隱藏並激活隱藏表單/應用程序

 string currPrsName = Process.GetCurrentProcess().ProcessName; 
     //Get the name of all processes having the same name as this process name 
     Process[] theProcessWithThisName = Process.GetProcessesByName(currPrsName); 
     if (theProcessWithThisName.Length > 1) 
     { 
      string message = "'" + currPrsName + ".exe'" + " is already running.\nOperation canceled"; 
      string caption = "ALREADY RUNNING"; 
      MessageBox.Show(message, caption, MessageBoxButtons.OK, MessageBoxIcon.Error); 
      Environment.Exit(0); //Terminate this instance 
     } 

我試過各種方式來取消隱藏應用程序沒有成功。

+2

你可能需要某種形式的IPC來做到這一點,除非你只是最小化窗口(或發送到托盤)。或者,您可以考慮使用[ShowWindow(..)](http://msdn.microsoft.com/en-gb/library/windows/desktop/ms633548(v = vs.85))發送'SW_HIDE'和'SW_SHOW'。 .aspx),如果你很喜歡使用WinApi –

+0

在.NET框架中使用內置支持:http://stackoverflow.com/questions/14324676/how-to-bring-the-main-form-to -TOP-時,試圖對運行-A-二審的最-AP/14326291#14326291 –

回答