我正在研究这个家庭应用程序(游戏反热),我遇到了这个问题。我认为这是针对“高级”c#开发人员的,我决定问你。
所以问题在于暂停应用程序。这种反热通过套接字与我的游戏进行通信。当应用程序关闭时,用户将被踢出游戏,但是当用户使用资源监视器暂停应用程序时,我的套接字通信不会更改/关闭,并且播放器可以在暂停时运行任何黑客和/或不允许的软件。
我考虑创建一个单独的控制台应用程序,它将监视主应用程序进程,如果它< 0它应该终止它。但是有一些问题。
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.");
}
}
}
}
}