DwmGetColorizationParameters (dwmapi)
Last changed: Craftplacer-79.240.105.142

.
Summary
TODO - a short description

C# Signature:

    [DllImport("dwmapi.dll", EntryPoint = "#127", PreserveSig = false)]
    private static extern void DwmGetColorizationParameters(out DWM_COLORIZATION_PARAMS parameters);

User-Defined Types:

None.

Alternative Managed API:

Do you know one? Please contribute it!

Notes:

Please note that this is an undocumented API and as such is not supported by Microsoft and can be changed or removed in the future without futher notice.

Tips & Tricks:

A more reliable approach to get the colorization parameters would be to implement your own method that tries to lookup each parameter directly from the Windows registry, with proper exception handling in the case a value cannot be obtained. The colorization parameters can be found under the key "HKEY_CURRENT_USER\Software\Microsoft\Windows\DWM". Please note that these are also undocumented and as such can also be changed or removed in the future.

Sample Code:

C# Sample

    [DllImport("dwmapi.dll", EntryPoint = "#127", PreserveSig = false)]
    private static extern void DwmGetColorizationParameters(out DWM_COLORIZATION_PARAMS parameters);

    private struct DWM_COLORIZATION_PARAMS
    {
        public uint clrColor;
        public uint clrAfterGlow;
        public uint nIntensity;
        public uint clrAfterGlowBalance;
        public uint clrBlurBalance;
        public uint clrGlassReflectionIntensity;
        public bool fOpaque;
    }

    public void getParameters()
    {
        DWM_COLORIZATION_PARAMS temp = new DWM_COLORIZATION_PARAMS();
        DwmGetColorizationParameters(out temp);
        StringBuilder sb = new StringBuilder();
        sb.AppendLine(temp.clrColor.ToString());
        sb.AppendLine(temp.clrAfterGlow.ToString());
        sb.AppendLine(temp.nIntensity.ToString());
        sb.AppendLine(temp.clrAfterGlowBalance.ToString());
        sb.AppendLine(temp.clrBlurBalance.ToString());
        sb.AppendLine(temp.clrGlassReflectionIntensity.ToString());
        sb.AppendLine(temp.fOpaque.ToString());
        MessageBox.Show(sb.ToString());
    }

Documentation