Idiotic bug Windows 7 Aero
От: kero Россия  
Дата: 22.04.11 08:55
Оценка:
Для тех, кто еще его не заметил, — еще один удивительный баг Aero.

Для наглядности запускаем рядышком Windows 7 Calc и вот этот пульт

_

Теперь изменяем к.н. общесистемный параметр...
Например — в нижней строке пульта ICONTITLELOGFONT.lfCharSet меняем с "1" на "2" и жмем на "Set",
в результате чего текст всех иконок становится "засекреченным".
Казалось бы: ну, и что до этого окну калькулятора? А вот поди ж ты:



Само собой, восстановление измененного параметра — исходную морду калькулятору не возвращает (и конечно, так же тощает любое окно, у которого нема WS_THICKFRAME).

А теперь, в порядке упражнения: таки найдите, как все поправить, прямо на этом же пульте
По всему, пашиным хозяевам позарез нужна война в Европе
(уверены — к ним не залетит, в предыдущих двух не залетало жеж)
Автор: kero
Дата: 21.07.14
Re: Idiotic bug Windows 7 Aero
От: kero Россия  
Дата: 23.04.11 07:57
Оценка:
K>А теперь, в порядке упражнения: таки найдите, как все поправить, прямо на этом же пульте

Ладно, добавил кнопу
По всему, пашиным хозяевам позарез нужна война в Европе
(уверены — к ним не залетит, в предыдущих двух не залетало жеж)
Автор: kero
Дата: 21.07.14
Re[2]: Idiotic bug Windows 7 Aero
От: CEMb  
Дата: 23.04.11 15:44
Оценка:
Здравствуйте, kero, Вы писали:

K>>А теперь, в порядке упражнения: таки найдите, как все поправить, прямо на этом же пульте


K>Ладно, добавил кнопу


Молодец
Re[2]: "Idiotic bug", ёмоё...
От: kero Россия  
Дата: 01.05.11 14:28
Оценка:
Idiotic bug налицо, но только не в Windows 7 Aero.
Начальную версию NcSysMetrics состряпал задолго до Висты, потом апериодически апгрейдил...
И вот только что осенило: для Висты/7 выложенный здесь NcSysMetrics — устарел!
Точнее — для Висты/7 требуется, чтоб у exe SubsystemVersion >= 6,
тогда как NcSysMetrics.exe слинкован привычно машинально (с SubsystemVersion = 4 на выходе).
И поэтому в нескольких моментах — врет, сволочь.

Поправленный для Висты/7 вариант — http://files.rsdn.ru/42164/ncsysmetrics_6.zip, сравните картинки:



(Перелинковывать, кстати, не обязательно, достаточно перебить в exe один полубайт).

Так что — прошу пардону.
По всему, пашиным хозяевам позарез нужна война в Европе
(уверены — к ним не залетит, в предыдущих двух не залетало жеж)
Автор: kero
Дата: 21.07.14
Re[3]: "Idiotic bug", ёмоё...
От: CEMb  
Дата: 02.05.11 06:15
Оценка: 4 (1) :)
Здравствуйте, kero, Вы писали:

K>Так что — прошу пардону.


Молодец

У меня с нововведениями и, особенно, староотведениями семёрки тоже проблема на проблеме...
Re[3]: "Idiotic bug", ёмоё...
От: kero Россия  
Дата: 04.05.11 17:46
Оценка:
K>Так что — прошу пардону.

А впрочем — если ребята взяли да изменили на Висте старую структуру NONCLIENTMETRICS (добавили в хвост еще дворд) — то фигли не позаботились о совместимости старых прог? Ведь косвенно наплевали еще и на GetWindowRect (и приходится прибегать к костылю из DWMAPI)...
---
А вот тут вроде точно напортачено:
значение параметра NONCLIENTMETRICS.iSmCaptionWidth через SPI_SET(...) туда-сюда изменять можно, но кнопке заголовка WS_EX_TOOLWINDOW-окна это пофигу,
что подтверждает и GetSystemMetrics(SM_CXSMSIZE).
По всему, пашиным хозяевам позарез нужна война в Европе
(уверены — к ним не залетит, в предыдущих двух не залетало жеж)
Автор: kero
Дата: 21.07.14
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.