#include "umanager.h" #include "../common.h" #include "process.h" #include "../um/imports.h" #include <TlHelp32.h> usermode::UManager::UManager( std::shared_ptr<global::ThreadPool> ThreadPool, std::shared_ptr<global::Client> ReportInterface ) { this->thread_pool = ThreadPool; this->process = std::make_unique<Process>(ReportInterface); } usermode::UManager::~UManager() { /* Wait for our jobs to be finished, then safely stop our pool */ //while ( true ) //{ // if ( this->thread_pool->Busy() == FALSE ) // { // this->thread_pool->Stop(); // break; // } //} } void usermode::UManager::ValidateProcessThreads() { this->thread_pool->QueueJob( [ this ]() {this->process->ValidateProcessThreads(); } ); } void usermode::UManager::ValidateProcessMemory() { this->thread_pool->QueueJob( [ this ]() {this->process->ScanProcessMemory(); } ); }