关于c#:当用户尝试打开新实例时,请返回到已打开的应用程序

关于c#:当用户尝试打开新实例时,请返回到已打开的应用程序

Return to an already open application when a user tries to open a new instance

这是我一段时间无法解决的问题。 防止第二个实例很简单,并且有很多方法,但是,使已经运行的进程恢复原状并不容易。 我想要:

  • 最小化:撤消最小化并将正在运行的实例置于最前面。
  • 在其他窗口后面:将应用程序置于最前面。

我在其中使用的语言是VB.NET和C#。


我发现此代码很有用。 它执行现有应用程序的检测和可选激活:

http://www.codeproject.com/KB/cs/cssingprocess.aspx


如果您使用的是.NET,则使用内置的.NET功能似乎更容易,更直接:

每周源代码31-单实例WinForms和Microsoft.VisualBasic.dll


这些链接可能会有所帮助:

http://www.ai.uga.edu/mc/SingleInstance.html

它具有用于检测另一个实例正在运行的代码,但是不确定一旦获得该实例后该如何处理。


推荐阅读