diff options
Diffstat (limited to '7zip/Archive/Zip/DllExports.cpp')
-rwxr-xr-x | 7zip/Archive/Zip/DllExports.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/7zip/Archive/Zip/DllExports.cpp b/7zip/Archive/Zip/DllExports.cpp index 0ecb3bcd..53d5a4b6 100755 --- a/7zip/Archive/Zip/DllExports.cpp +++ b/7zip/Archive/Zip/DllExports.cpp @@ -50,12 +50,28 @@ DEFINE_GUID(CLSID_CZipHandler, 0x23170F69, 0x40C1, 0x278A, 0x10, 0x00, 0x00, 0x01, 0x10, 0x01, 0x00, 0x00); HINSTANCE g_hInstance; +#ifndef _UNICODE +bool g_IsNT = false; +static bool IsItWindowsNT() +{ + OSVERSIONINFO versionInfo; + versionInfo.dwOSVersionInfoSize = sizeof(versionInfo); + if (!::GetVersionEx(&versionInfo)) + return false; + return (versionInfo.dwPlatformId == VER_PLATFORM_WIN32_NT); +} +#endif extern "C" BOOL WINAPI DllMain(HINSTANCE hInstance, DWORD dwReason, LPVOID /*lpReserved*/) { if (dwReason == DLL_PROCESS_ATTACH) + { g_hInstance = hInstance; + #ifndef _UNICODE + g_IsNT = IsItWindowsNT(); + #endif + } return TRUE; } |