如何确定我的桌面程序是否在控制台上运行?

时间:2014-10-27 07:18:07

标签: c# .net windows remote-desktop rdp

我的部分应用程序是Windows Forms(C#)桌面程序,它将在服务器上运行。我不想深入了解为什么这是必要的血腥细节,但让我们把它看作是它的读物!

启动时,我想检查它是否在控制台上运行(即物理上在控制台上运行,或者使用/ console交换机运行RDP),而不是任何其他RDP会话

2 个答案:

答案 0 :(得分:0)

这堂课似乎很有趣:Process。这就是你如何从远程计算机获取进程:

Process[] procs = System.Diagnostics.Process.GetProcessesByName("TestApp", "MyServer01");

但这仅适用于本地网络。如果您需要通过互联网,我会使用一种方法编写一个小型自主式Web服务器,如果应用程序正在运行,则返回 TRUE

答案 1 :(得分:0)

您可以使用Mutex来解决您的问题。启动应用程序时,您可以安装名称前缀为" Global \"的互斥锁。通过这种方式,它将在整个系统中独一无二,这使您可以注意到您的应用程序已在系统上运行。