Mark Elvers
Mark Elvers

Reputation: 647

Change Ease of Access Settings via Windows API: SystemParametersInfo

I am trying to toggle the three settings in Ease of Access via the SystemParametersInfo API call.

For example, I can turn off Show animations in Windows (1) like this:

SystemParametersInfo(SPI_SETCLIENTAREAANIMATION, 0, (PVOID)false, SPIF_UPDATEINIFILE | SPIF_SENDCHANGE);

And I can turn off the Show desktop background image (3) by calling:

SystemParametersInfo(SPI_SETDISABLEOVERLAPPEDCONTENT, 0, (PVOID)true, SPIF_UPDATEINIFILE | SPIF_SENDCHANGE);

However, I cannot find how to toggle Show transparency in Windows (2).

ref: https://learn.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-systemparametersinfoa

I have tried to monitor API calls using API Monitor but without success. It shows the calls above but only calls to SPI_GETHIGHCONTRAST when transparency is toggled.

Does anyone know how to do it?

Ease of Use Settings

Upvotes: 1

Views: 696

Answers (1)

Rita Han
Rita Han

Reputation: 9700

However, I cannot find how to toggle Show transparency in Windows (2).

Change transparency option cause the following registry value change:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\Personalize\EnableTransparency

1: On, 0: Off

If it helps you can achieve the purpose via writing registry key.

Note: Although it is possible technically, there is no official document about this. So it is not suggested to use in product environment.

Upvotes: 1

Related Questions