Получение современных системных значков с LoadIcon - PullRequest
0 голосов
/ 27 марта 2020

Я использую LoadIcon для загрузки системных значков, таких как знак «Внимание». Это прекрасно работает, но это дает мне значок со старым (я думаю) Windows 7.

Моя программа работает на Windows 10.

Код:

hicon = LoadIcon(NULL, IDI_EXCLAMATION);

enter image description here

Есть ли способ получить значки с новым внешним видом?

С другой стороны MessageBox с флагом MB_ICONEXCLAMATION показывает новый значок.

1 Ответ

2 голосов
/ 27 марта 2020

Я видел, что MessageBoxW использует функцию LoadIconWithScaleDown для загрузки значков вместо LoadImage или LoadIcon. Со стандартными идентификаторами значков (от 0x7f00 (IDI_APPLICATION..IDI_SHIELD) эта функция фактически загружает изображения из imageres.dll (в то время как LoadImage загружает их из user32.dll ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...