MemoryModulePP
MemoryModulePP copied to clipboard
MemoryModule which compatible with Win32 API and support exception handling
1. MmpTls在线程开始时分配内存,线程结束时并未释放。 2. LPVOID buffer = ReadDllFile(R"(Test.dll)"); HMODULE hModule = nullptr; auto status = LdrLoadDllMemoryExW(&hModule, nullptr, 0, buffer, 0, L"", nullptr); LdrUnloadDllMemory(hModule); 如以上测试代码,多个线程同时执行就会出错,在LdrLoadDllMemoryEx和LdrUnloadDllMemory中加上锁后,有所改善,但仍有其他崩溃。
宏判断有问题,导致结构重定义,_PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY在10.0.19041.0中已经存在了,应该用NTDDI_WIN10_FE更早的版本,如NTDDI_WIN10_19H1或更早 1>d:\memorymodulepp\3rdparty\phnt\include\ntpsapi.h(685): error C2011: “_PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY”:“struct”类型重定义 1>c:\program files (x86)\windows kits\10\include\10.0.19041.0\um\winnt.h(11985): note: 参见“_PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY”的声明 #if !defined(NTDDI_WIN10_FE) || (NTDDI_VERSION < NTDDI_WIN10_FE) typedef struct _PROCESS_MITIGATION_REDIRECTION_TRUST_POLICY { union { ULONG Flags; struct { ULONG EnforceRedirectionTrust :...