使用资源监视器检查应用程序是否已暂停

时间:2018-03-27 20:16:05

标签: c# windows console-application

我正在研究这个家庭应用程序(游戏反热),我遇到了这个问题。我认为这是针对“高级”c#开发人员的,我决定问你。

所以问题在于暂停应用程序。这种反热通过套接字与我的游戏进行通信。当应用程序关闭时,用户将被踢出游戏,但是当用户使用资源监视器暂停应用程序时,我的套接字通信不会更改/关闭,并且播放器可以在暂停时运行任何黑客和/或不允许的软件。

我考虑创建一个单独的控制台应用程序,它将监视主应用程序进程,如果它< 0它应该终止它。但是有一些问题。

1 - 我不知道从Windows窗体应用程序运行控制台应用程序是可能的。

2 - 我尝试使用定时器检查主应用程序状态,但控制台应用程序在构建后立即关闭。

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            Timer t = new Timer(LauncherCheck, null, 0, 2000);
            if (Debugger.IsAttached)
            {
                Console.WriteLine("Press any key to continue . . .");
                Console.ReadLine();
            }
        }

        private static void LauncherCheck(Object o)
        {
            while (true)
            {
                System.Diagnostics.Process[] proc = System.Diagnostics.Process.GetProcessesByName("Anticheat");
                if (proc.Length < 1)
                {
                    Console.WriteLine("Application is suspended / not running.");
                }
                else
                {
                    Console.WriteLine("Application is running.");
                }
            }
        }
    }
}

0 个答案:

没有答案