如何防止我的单实例应用程序获得焦点

时间:2014-09-24 16:46:52

标签: c# winforms command-line-arguments single-instance

我找到了几种创建单实例WinForms应用程序的解决方案。我正在使用C#,目前我有三个工作版本。但是,每个版本都缺少我需要的功能。

程序必须只运行一次,使用新的命令参数更新它的视图(显示文件),并在发生这种情况时不获得焦点。

  1. 我添加了对VB dll的引用的版本会使用我想要加载的新文档进行更新,但它会获得焦点。这方面的一些例子有一行明确告诉窗口转到行的前面。我的代码没有这个。我的代码与this article中的第一个示例非常相似。

  2. 当已经有版本运行时,互斥锁版本会停止。 (我还没有尝试合并版本来处理正在运行的实例。)我的代码类似于this

  3. 并且,命名的实例版本没有获得焦点(好)但不识别新的命令行参数。我的代码类似于this

  4. 这些项目中的每一项都有一个解决方案可以完成我需要的工作,而不是所有这些解决方案。

0 个答案:

没有答案