diff --git a/MemoryModule/MemoryModule.vcxproj b/MemoryModule/MemoryModule.vcxproj
index b0889c4..69e6e7a 100644
--- a/MemoryModule/MemoryModule.vcxproj
+++ b/MemoryModule/MemoryModule.vcxproj
@@ -71,7 +71,7 @@
true
v142
Unicode
- Spectre
+ false
StaticLibrary
diff --git a/MemoryModule/NativeFunctionsInternal.h b/MemoryModule/NativeFunctionsInternal.h
index 9ee9ed0..bc3eb6e 100644
--- a/MemoryModule/NativeFunctionsInternal.h
+++ b/MemoryModule/NativeFunctionsInternal.h
@@ -86,8 +86,8 @@ NTSTATUS NTAPI LdrUnloadDllMemory(IN HMEMORYMODULE BaseAddress);
#pragma comment(linker,"/export:LdrUnloadDllMemoryAndExitThread")
#pragma comment(linker,"/export:FreeLibraryMemoryAndExitThread=LdrUnloadDllMemoryAndExitThread")
#else
-#pragma comment(linker,"/export:LdrUnloadDllMemoryAndExitThread=_NtUnloadDllMemoryAndExitThread@8")
-#pragma comment(linker,"/export:FreeLibraryMemoryAndExitThread=_NtUnloadDllMemoryAndExitThread@8")
+#pragma comment(linker,"/export:LdrUnloadDllMemoryAndExitThread=_LdrUnloadDllMemoryAndExitThread@8")
+#pragma comment(linker,"/export:FreeLibraryMemoryAndExitThread=_LdrUnloadDllMemoryAndExitThread@8")
#endif
//FreeLibraryMemoryAndExitThread = GetProcAddress(GetModuleHandleW(nullptr), "FreeLibraryMemoryAndExitThread");
//FreeLibraryMemoryAndExitThread(hModule, 0);
diff --git a/MemoryModule/rtlinv.cpp b/MemoryModule/rtlinv.cpp
index 863b04b..9bc763b 100644
--- a/MemoryModule/rtlinv.cpp
+++ b/MemoryModule/rtlinv.cpp
@@ -1,5 +1,7 @@
#include "stdafx.h"
+int NTAPI RtlCaptureImageExceptionValues(PVOID BaseAddress, PDWORD SEHandlerTable, PDWORD SEHandlerCount);
+
static __forceinline bool NTAPI RtlIsModuleUnloaded(PLDR_DATA_TABLE_ENTRY entry) {
if (RtlIsWindowsVersionOrGreater(6, 2, 0)) {
return PLDR_DATA_TABLE_ENTRY_WIN8(entry)->DdagNode->State == LdrModulesUnloaded;
diff --git a/MemoryModule/rtltls.cpp b/MemoryModule/rtltls.cpp
index 768547e..d598149 100644
--- a/MemoryModule/rtltls.cpp
+++ b/MemoryModule/rtltls.cpp
@@ -226,14 +226,14 @@ static NTSTATUS NTAPI RtlInvokeTlsHandler(IN PLDR_DATA_TABLE_ENTRY LdrEntry, IN
if (!Default.LdrpHandleTlsData) {
return STATUS_NOT_SUPPORTED;
}
- return (stdcall ? Default.LdrpHandleTlsData : WinBlue.LdrpHandleTlsData)(LdrEntry);
+ return stdcall ? Default.LdrpHandleTlsData(LdrEntry) : WinBlue.LdrpHandleTlsData(LdrEntry);
}
NTSTATUS operator()(PLDR_DATA_TABLE_ENTRY LdrEntry, DWORD dwFlags) {
if (!Default.LdrpReleaseTlsEntry) {
return STATUS_NOT_SUPPORTED;
}
- return (stdcall ? Default.LdrpReleaseTlsEntry : WinBlue.LdrpReleaseTlsEntry)(LdrEntry, dwFlags);
+ return stdcall ? Default.LdrpReleaseTlsEntry(LdrEntry,dwFlags) : WinBlue.LdrpReleaseTlsEntry(LdrEntry, dwFlags);
}
}static InvokeHandler;
diff --git a/test/test.vcxproj b/test/test.vcxproj
index ebf4146..5b0935c 100644
--- a/test/test.vcxproj
+++ b/test/test.vcxproj
@@ -150,7 +150,8 @@
- true
+
+
true