【问题标题】:preventing a program from starting when another prog is running (Windows)阻止程序在另一个程序运行时启动(Windows)
【发布时间】:2011-10-23 16:04:52
【问题描述】:

我有 2 个程序。我想构建一个外部工具,当另一个程序已经在运行时,它可以防止其中一个程序启动,反之亦然。 这两个程序的代码我都不能碰。

我想最好用 C# 来做,但脚本语言也可以。

任何人都可以帮助我了解如何实现它的概念吗?

提前致谢。

【问题讨论】:

    标签: c#


    【解决方案1】:

    将您的工具编写为 Windows 服务,该服务在后台继续运行,并在第二个程序启动时终止它。它可以通过监听 WMI 事件来了解新进程何时启动,请参阅.NET Events for Process executable start

    【讨论】:

      【解决方案2】:

      有几种方法可以做到这一点。如果您使用 C#,您应该使用 GetProcessesByName() 获取进程名称。它看起来像这样 Process[] 进程 = Process.GetProcessesByName(processName); 如果您知道进程名称,则可以终止该进程 或者使用 [Semaphore Class] (http://msdn.microsoft.com/en-us/library/system.threading.semaphore.aspx)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-09-16
        • 1970-01-01
        • 2011-08-24
        • 1970-01-01
        • 2020-12-13
        • 1970-01-01
        • 2023-03-30
        相关资源
        最近更新 更多