Use KUSER_SHARED_DATA for checking the build number

This commit is contained in:
Duncan Ogilvie 2021-09-18 22:45:29 +02:00
parent d4ad8293f7
commit bbab6359b0
1 changed files with 4 additions and 10 deletions

View File

@ -57,18 +57,12 @@ __declspec(dllexport) void TITCALL DebugLoop()
bool IsDbgReplyLaterSupported = false; bool IsDbgReplyLaterSupported = false;
// Check if DBG_REPLY_LATER is supported based on Windows version (Windows 10, version 1507 or above) // Check if DBG_REPLY_LATER is supported based on Windows version (Windows 10, version 1507 or above)
OSVERSIONINFOEXA OSInfo; // https://www.gaijin.at/en/infos/windows-version-numbers
OSInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFOEXA); const uint32_t NtBuildNumber = *(uint32_t*)(0x7FFE0000 + 0x260);
if (NtBuildNumber != 0 && NtBuildNumber >= 10240)
if (GetVersionExA((LPOSVERSIONINFOA)&OSInfo))
{
if (OSInfo.wProductType == VER_NT_WORKSTATION &&
(OSInfo.dwMajorVersion > 10 ||
(OSInfo.dwMajorVersion == 10 && OSInfo.dwBuildNumber >= 1507)))
{ {
IsDbgReplyLaterSupported = true; IsDbgReplyLaterSupported = true;
} }
}
DBGFileHandle = NULL; DBGFileHandle = NULL;
DBGCode = DBG_CONTINUE; DBGCode = DBG_CONTINUE;