DwmExtendFrameIntoClientArea не работает одинаково в Vista

#vb.net #winforms #aero-glass #dwm

#vb.net #winforms #аэростекло #dwm

Вопрос:

Я использовал класс Glass_full отсюда:http://www.dreamincode.net/forums/topic/146813-glass-form-dwmapidll-api /

Он отлично работает в Windows 7. Мне даже удалось найти простое решение проблемы с текстом. Я решил это, используя пользовательский цвет для backcolor и TransparencyKey в форме (цвет rgb 1,2,3). Это отлично работает на 7, но когда тот же код выполняется в Vista, он не отображает стекло.

Я могу отобразить стекло с backcolor black, а TransparencyKey работает, чтобы сделать форму полностью прозрачной, но при объединении, как я сделал на 7, стекло не отображается. (Я получаю rgb 1,2,3 для фона)

Я попытался добавить PropertyGrid в форму и использовать ее для установки backcolor и transparencyKeys для тестирования, но DWM зависал, когда я устанавливал transparencykey на то же значение, что и backcolor.

Есть ли какой-либо способ исправить это?