2016-08-08 86 views
0

你好,我正在爲一款遊戲製作一個啓動器/預熱,昨天我發現用戶可以簡單地使用Process Explorer掛起反熱線程並注入hack,然後清理使用過的dll,然後解除它並破解。 我試圖找到任何方式如何檢測它,但只發現如何暫停過程沒有任何關於如何檢測它我也看了應用程序和過程事件,但沒有發現任何可用的。 現在我添加了一個「計時器「如果在3秒內沒有進程/模塊掃描,但在遊戲加載時它會關閉遊戲,並且在一段時間內幾乎需要100%cpu才能關閉遊戲,而對於我的約2秒,在一些較舊的處理器上是沒有掃描可能長達10秒,所以它不是一個選項..如何檢測當前進程是否被暫停?

所以這個事件記錄在任何地方?或者我該怎麼做?我知道我能找到的進程或線程狀態,但不是在所有我的線程被掛起

+0

你是什麼意思?暫停的進程或線程就是這樣:掛起。你的代碼沒有執行。它如何「知道」它已被暫停?如果沒有一個能夠清楚表明你想要做什麼的好的[mcve],那麼最好的問題就是太寬泛。有太多可能的方案符合你的描述,以及太多的答案。但是,真的,你似乎已經選擇了一條自我毀滅的路線。 –

+0

您可以隨時嘗試RobinHood/FriarTuck的遊戲(請參閱http://www.catb.org/jargon/html/meaning-of-hack.html) - 讓兩個進程監控彼此的可疑行爲:-) – paxdiablo

+0

Peter my問題應該是有任何進程狀態的日誌,或者我可以提出進程被UNsuspended事件嗎?我正在考慮做兩個aplications互相檢查,但我想避免,如果它的可能.. –

回答

0

有沒有什麼好的選擇做......但也有3種可能性,可能工作

  1. 創建2個處理

    • 首先是一個包含所有的代碼和 將掃描第二處理
    • 第二工藝將掃描主主處理過程(如@paxdiablo說)

    如何繞過它?一次選擇兩個進程並掛起它們。

    一些用戶會嘗試一次選擇2個進程。

  2. 搜索打開過程,如果Process Explorer中運行,然後殺死它

    如何繞過?使用另一個任務管理器暫停選項

    缺點?您的AntiCheat-Launcher可以被Anti-Virus檢測到。

  3. 將您的代碼嵌入到遊戲代碼中(例如修改)。

    我認爲這是最好的選擇......但是如果這個遊戲不是用C#編寫的(例如Minecraft),那麼你必須學習一門新的語言。

相關問題