当用户尝试打开新实例时,返回已打开的应用程序

Mag*_*Kat 19 .net c# vb.net windows

这是一个我一直无法弄清楚的问题.防止第二个实例是微不足道的,并且有许多方法,但是,恢复已经运行的进程则不然.我想要:

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

我使用的语言是VB.NET和C#.

Big*_* GH 11

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

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


Tim*_*son 7

如果您使用的是.NET,那么使用内置.NET功能这似乎更简单,更直接:

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