Windows Aero - software disable visual effects

Does anyone know if there is an API to programmatically disable / enable certain Windows visual effects such as Enable Transparent Glass or Enable Aero Peek?

I mean those that are configured in: System / Advanced system settings / Advanced (tab) / Performance options / Custom

I am creating an accessibility tool for Windows and I need to turn off some visual effects because they are "invisible" to users with visual impairments. In addition, I need to save some processor cycles to increase and adjust the screen.

thanks

+4
source share
2 answers

No, it can be disabled when a specific application is running using DwmEnableComposition() .

Changing it globally is internal to windows and should really be done by the user.

+4
source

Aero themes cause problems when using transparent png and other BitBlting images. In the Aero theme, transparency is obtained when I use AlphaBlend instead of BitBlt and CPngImage instead of CBitmap and set the BLENDFUNCTION structure with some transparency from 0 to 255 in BLENDFUNCTION :: SourceConstantAlpha. I use this approach when I want to have a transparent background or just fade out as translucent (opacity 0-255) and when the Aero theme is swept away for all the transparency. Therefore, I will disable aerodynamics transparency using the DwmEnableComposition (DWM_EC_DISABLECOMPOSITION);

 HRESULT hr = S_OK; hr = DwmEnableComposition(DWM_EC_DISABLECOMPOSITION); if (SUCCEEDED(hr)){ // Aero theme effect is off! No more swept away transparency } 

just call it in OnInitDialog () or some earlier window instance function. It does the trick.

+2
source

Source: https://habr.com/ru/post/1402900/


All Articles