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 "comm_dispatch.h"
#include "protect_filter.h" #include "protect_filter.h"
#include "anit_screen_grap.h"
namespace comm_dispatch namespace comm_dispatch
{ {
auto dispatch(CMD_COMM* data) -> NTSTATUS auto dispatch(CMD_COMM* data) -> NTSTATUS
{ {
auto status = STATUS_UNSUCCESSFUL; auto status = STATUS_UNSUCCESSFUL;
switch (data->CommID) switch (data->CommID)
{ {
@@ -15,7 +16,17 @@ namespace comm_dispatch
} }
case CMD::DRIVER_PROTECT_PROCESS: 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; break;
} }
default: default:
+13 -2
View File
@@ -4,15 +4,26 @@
struct CMD_COMM struct CMD_COMM
{ {
DWORD64 CommID; DWORD64 CommID;
DWORD64 Pid; DWORD64 Buf;
DWORD64 status; DWORD64 status;
}; };
struct IOCTL_PROCESS
{
DWORD64 Pid;
};
struct IOCTL_WINDOW
{
DWORD64 HWND;
DWORD64 Flags;
};
enum CMD enum CMD
{ {
MSG_BASE = 0x10000, MSG_BASE = 0x10000,
DRIVER_COMM_TEST, DRIVER_COMM_TEST,
DRIVER_PROTECT_PROCESS DRIVER_PROTECT_PROCESS,
WINDOW_ANIT_SCREEN,
}; };
namespace comm_dispatch namespace comm_dispatch