#ifdef HANDLES_H #define HANDLES_H #define WIN32_LEAN_AND_MEAN #include #include #include typedef HANDLE (__stdcall *OPEN_THEME_DATA)(HWND, LPCWSTR); typedef HRESULT (__stdcall *CLOSE_THEME_DATA)(HANDLE); typedef HRESULT (__stdcall *DRAW_THEME_TEXT_EX)(HANDLE, HDC, int, int, LPCWSTR, int, DWORD, LPRECT, const DTTOPTS *); typedef HRESULT (__stdcall *DWM_ENABLE_COMPOSITION)(UINT uCompositionAction); typedef HRESULT (__stdcall *DWM_IS_COMPOSITION_ENABLED)(BOOL *pfEnabled); typedef HRESULT (__stdcall *DWM_EXTEND_FRAME_INTO_CLIENT_AREA)(HWND , const MARGINS *); typedef HRESULT (__stdcall *DWM_ENABLED_BLUR_BEHIND_WINDOW)(HWND, DWM_BLURBEHIND *); typedef BOOL (__stdcall *SET_LAYERED_WINDOW_ATTRIBUTES)(HWND, COLORREF, BYTE, DWORD); struct Handles { HANDLE hTheme; HINSTANCE hTHEMEDLL; HINSTANCE hDWMDLL; OPEN_THEME_DATA fOpenThemeData; CLOSE_THEME_DATA fCloseThemeData; DRAW_THEME_TEXT_EX fDrawThemeTextEx; SET_LAYERED_WINDOW_ATTRIBUTES fSetLayeredWindowAttributes; DWM_ENABLE_COMPOSITION fDwmEnableComposition; DWM_IS_COMPOSITION_ENABLED fDwmIsCompositionEnabled; DWM_EXTEND_FRAME_INTO_CLIENT_AREA fDwmExtendFrameIntoClientArea; DWM_ENABLED_BLUR_BEHIND_WINDOW fDwmEnableBlurBehindWindow; }; #endif // HANDLES_H