X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/5c33522fca7cddc441a316f5b9fb50d7685435ba..34b4899df5053a53482f18d8c97a2b1913019d30:/src/msw/app.cpp diff --git a/src/msw/app.cpp b/src/msw/app.cpp index ccac439ee7..fccf263409 100644 --- a/src/msw/app.cpp +++ b/src/msw/app.cpp @@ -966,8 +966,14 @@ int wxApp::GetComCtl32Version() // we're prepared to handle the errors wxLogNull noLog; - // the DLL should really be available - wxDynamicLibrary dllComCtl32(_T("comctl32.dll"), wxDL_VERBATIM); + // we don't want to load comctl32.dll, it should be already loaded but, + // depending on the OS version and the presence of the manifest, it can + // be either v5 or v6 and instead of trying to guess it just get the + // handle of the already loaded version + wxDynamicLibrary dllComCtl32(_T("comctl32.dll"), + wxDL_VERBATIM | + wxDL_QUIET | + wxDL_GET_LOADED); if ( !dllComCtl32.IsLoaded() ) { s_verComCtl32 = 0; @@ -1005,6 +1011,9 @@ int wxApp::GetComCtl32Version() } } } + + // we shouldn't unload it here as we didn't really load it above + dllComCtl32.Detach(); } return s_verComCtl32;