feat dispatch protect and anit screen

This commit is contained in:
2026-06-23 13:17:33 +08:00
parent ec66fbbf8a
commit 351ffe7413
2 changed files with 26 additions and 4 deletions
+13 -2
View File
@@ -1,10 +1,11 @@
#include "comm_dispatch.h"
#include "protect_filter.h"
#include "anit_screen_grap.h"
namespace comm_dispatch
{
auto dispatch(CMD_COMM* data) -> NTSTATUS
{
auto status = STATUS_UNSUCCESSFUL;
switch (data->CommID)
{
@@ -15,7 +16,17 @@ namespace comm_dispatch
}
case CMD::DRIVER_PROTECT_PROCESS:
{
status = protect_filter::add_list((ULONG)data->Pid, NULL);
auto process_data = (IOCTL_PROCESS*)data->Buf;
status = protect_filter::add_list((ULONG)process_data->Pid, NULL);
break;
}
case CMD::WINDOW_ANIT_SCREEN:
{
auto window_data = (IOCTL_WINDOW*)data->Buf;
status = anit_screen_grap::GreProtectSpriteContent(
(HWND)window_data->HWND, (UINT)window_data->Flags);
break;
}
default:
+13 -2
View File
@@ -4,15 +4,26 @@
struct CMD_COMM
{
DWORD64 CommID;
DWORD64 Pid;
DWORD64 Buf;
DWORD64 status;
};
struct IOCTL_PROCESS
{
DWORD64 Pid;
};
struct IOCTL_WINDOW
{
DWORD64 HWND;
DWORD64 Flags;
};
enum CMD
{
MSG_BASE = 0x10000,
DRIVER_COMM_TEST,
DRIVER_PROTECT_PROCESS
DRIVER_PROTECT_PROCESS,
WINDOW_ANIT_SCREEN,
};
namespace comm_dispatch