Initial community commit
This commit is contained in:
parent
537bcbc862
commit
fc06254474
16440 changed files with 4239995 additions and 2 deletions
46
Src/Plugins/General/gen_ml/mldwm.cpp
Normal file
46
Src/Plugins/General/gen_ml/mldwm.cpp
Normal file
|
@ -0,0 +1,46 @@
|
|||
#include "./mldwm.h"
|
||||
|
||||
typedef HRESULT (WINAPI *DWMSETWINDOWATTRIBUTE)(HWND /*hwnd*/, DWORD /*dwAttribute*/, LPCVOID /*pvAttribute*/, DWORD /*cbAttribute*/);
|
||||
typedef HRESULT (WINAPI *DWMISCOMPOSITIONENABLED)(BOOL* /*pfEnabled*/);
|
||||
|
||||
static HMODULE hDwmModule = NULL;
|
||||
static HRESULT loadResult = E_MLDWM_NOTLOADED;
|
||||
|
||||
static DWMSETWINDOWATTRIBUTE fnSetWindowAttribute = NULL;
|
||||
static DWMISCOMPOSITIONENABLED fnIsCompositionEnabled = NULL;
|
||||
|
||||
HRESULT MlDwm_IsLoaded()
|
||||
{
|
||||
return loadResult;
|
||||
}
|
||||
|
||||
HRESULT MlDwm_LoadLibrary(void)
|
||||
{
|
||||
if (E_MLDWM_NOTLOADED == loadResult)
|
||||
{
|
||||
hDwmModule = LoadLibraryW(L"dwmapi.dll");
|
||||
if (!hDwmModule) loadResult = E_MLDWM_LOADFAILED;
|
||||
else
|
||||
{
|
||||
fnSetWindowAttribute = (DWMSETWINDOWATTRIBUTE)GetProcAddress(hDwmModule, "DwmSetWindowAttribute");
|
||||
fnIsCompositionEnabled = (DWMISCOMPOSITIONENABLED)GetProcAddress(hDwmModule, "DwmIsCompositionEnabled");
|
||||
loadResult = S_OK;
|
||||
}
|
||||
}
|
||||
return loadResult;
|
||||
}
|
||||
|
||||
|
||||
HRESULT MlDwm_SetWindowAttribute(HWND hwnd, DWORD dwAttribute, LPCVOID pvAttribute, DWORD cbAttribute)
|
||||
{
|
||||
if (!hDwmModule) return loadResult;
|
||||
if (!fnSetWindowAttribute) return E_MLDWM_BADFUNCTION;
|
||||
return fnSetWindowAttribute(hwnd, dwAttribute, pvAttribute, cbAttribute);
|
||||
}
|
||||
|
||||
HRESULT MlDwm_IsCompositionEnabled(BOOL *pfEnabled)
|
||||
{
|
||||
if (!hDwmModule) return loadResult;
|
||||
if (!fnIsCompositionEnabled) return E_MLDWM_BADFUNCTION;
|
||||
return fnIsCompositionEnabled(pfEnabled);
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue