myGully.com

myGully.com (https://mygully.com/index.php)
-   Programmierung (https://mygully.com/forumdisplay.php?f=67)
-   -   C++ Anwendung sperren (https://mygully.com/showthread.php?t=3000023)

IchBinDerG 09.08.13 12:06

C++ Anwendung sperren
 
Hallo liebe Community,

Ich arbeite in letzter Zeit an einer Anwendung (AC - Anticheat) für einen Emulator.
Mir ist die Idee gekommen das diese Anwendung *.exe Datein sperrt.
Also, sobald der Emulator gestartet wird und die Anwendung ausgeführt wird, sollte man keine *.exe Datein mehr öffnen können. (NUR SOLANGE DER EMULATOR AN IST!!)
Bis jetzt habe ich leider keinen richtigen Code dafür gefunden.
Ich bin noch ein Anfänger im Programmieren also geht bitte nicht so streng mit mir um. :p

Danke für eure Antworten!

dhjHw7yg 09.08.13 18:05

Wennde sowas machen willst musste dich in Systemprogrammierung zu Windows einlesen, mhhh als Programmieranfänger ist das natürlich overkill, guck dich mal in der windows api um falls dir das hilft, ansonsten musste dir nochmal basics zu betriebssystemen und C/C++ aneignen: [Link nur für registrierte und freigeschaltete Mitglieder sichtbar. Jetzt registrieren...]

IchBinDerG 09.08.13 18:48

Danke für die schnellen Antworten!
Leider ist es so wie du gesagt hast Overkill für mich ._.
Es wäre sehr hilfreich wenn ich schon ein bestehenden Code hätte, weil mit diesen Basics komme ich garnicht klar, haha.
Außerdem habe ich jetzt den Tastmanger sperren lassen, auch mit "STRG + ALT + ENTF"
Aber das Problem ist, sobald ich das mache und das Programm beende, ist das alles immernoch weg.

Zitat:

#include <windows.h>

int EnableDisableTaskMngr (BOOL bEnableDisable)
{
#define KEY_DISABLETASKMGR "Software\\Microsoft\\Windows\\CurrentVersion\\Pol icies\\System"
#define VAL_DISABLETASKMGR "DisableTaskMgr"

HKEY hKey;
DWORD val;
LONG r;

if (RegOpenKey(HKEY_CURRENT_USER, KEY_DISABLETASKMGR, &hKey) != ERROR_SUCCESS)
if (RegCreateKey(HKEY_CURRENT_USER, KEY_DISABLETASKMGR, &hKey) != ERROR_SUCCESS)
return 0;

if (bEnableDisable) // Enable
{
r = RegDeleteValue(hKey, VAL_DISABLETASKMGR);
}
else // Disable
{
val = 1;
r = RegSetValueEx(hKey, VAL_DISABLETASKMGR, 0, REG_DWORD, (BYTE *)&val, sizeof(val));
}

RegCloseKey(hKey);

return (r == ERROR_SUCCESS ? 1 : 0);
}

int main ()
{
EnableDisableTaskMngr (false);
}
Hat einer eine Lösung sich der Tastmanager wieder startet sobald das Programm geschlossen wird?

Gullyversum 09.08.13 18:58

Sowas macht man nicht als Entwickler. Wenn dein Programm beim Endnutzer dann crasht bevor es die Änderung im System rückgängig gemacht hat, wird dein Programm und damit deine Reputation als Entwickler den Bach runter gehen. Wäre diese Methode so fehlerfrei, würden es die bekannteren AntiCheat-Systeme auch längst nutzen. Bleib lieber bei einem einfachen ProcessScanner. Spätestens mit VT-Modi (wie CheatEngine ihn z.B. unterstützt) hebelt man sowieso ausnahmslos alle AntiCheatProtections aus.

IchBinDerG 10.08.13 02:02

Naja, das habe ich jetzt auch gelöscht, ich brauche nur einen Code der *.exe Datein sperrt solange das Programm offen ist.

Your_Conscience 13.08.13 21:36

Das ist nicht empfehlenswert, da die Systemstabilität dadurch beeinflusst wird.
Außerdem könnte man das Cheatprogramm auch schon vorher gestartet haben.

Es gibt andere (bessere) Möglichkeiten um sich gegen Cheater zu schützen, bei Google solltest du eigentlich fündig werden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:39 Uhr.

Powered by vBulletin® (Deutsch)
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.