Drinko
| |
Администратор
|
Возможность смены фона в экране авторизации
Как вы, наверное, знаете, в недавно утекшей в сеть сборке под номером 7057 появился новый экран авторизации (иначе логонскрин). И сдержав свое обещание сделать Windows 7 более настраиваемой, нежели предыдущие версии, Microsoft добавила в свою ОС возможность изменять фоновое изображение экрана авторизации без необходимости использовать сторонние приложения, как Stardock LogonStudio, или специальных хаков.
И хотя данная функция предназначена в первую очередь OEM-производителям, ее очень легко включить и выключить с помощью ключей реестра.
Во-первых, необходимо проверить, включена ли эта функция или нет. За функцию отвечает ключ типа DWORD с названием OEMBackground в ветке реестра HKLM\Software\Microsoft\Windows\CurrentVersion\Authentication\LogonUI\Background: 1 означает, что функция включена, 0 - выключена. Этот ключ присутствует не в каждой системе, поэтому вполне возможно, что его придется создать вручную.
Рис. 1. Фоновое изображение до и после настройки.
Затем, если функция активирована, через обращение к GetSystemMetrics система получает информацию о ширине и высоте монитора. Эти значения используются в вычислении верного соотношения сторон. Так, например, разрешение моего монитора 1920×1200 пикселей. Таким образом, соотношение сторон равно 1.6:1.
Результаты вычислений сверяются с таблицей, которая проверяет, какое изображение загружать с диска. И хотя, к моему сожалению, я не смог отыскать монитор с большой диагональю, выяснилось, что на разрешениях выше 1920×1200 изображения будут масштабироваться до ближайшего значения в таблице, то есть соотношение сторон будет сохранено, а изображение будет уменьшено.
Поскольку функция ориентирована на OEM-производителей, все изображения хранятся в папке %windir%\system32\oobe\info\backgrounds. Равно как и значение в реестре, эта папка может по умолчанию не существовать. В этой папке поддерживаются следующие файлы, отсортированные по соотношению сторон:
backgroundDefault.jpg background768×1280.jpg (0.6) background900×1440.jpg (0.625) background960×1280.jpg (0.75) background1024×1280.jpg (0.8) background1280×1024.jpg (1.25) background1024×768.jpg (1.33-) background1280×960.jpg (1.33-) background1600×1200.jpg (1.33-) background1440×900.jpg (1.6) background1920×1200.jpg (1.6) background1280×768.jpg (1.66-) background1360×768.jpg (1.770833-)
Обратите внимание, что размер изображений не должен превышать 256Кб.
В случае, если используется редкое соотношение сторон, отсутствующее в таблице, загружается backgroundDefault.jpg и подгоняется под размеры экрана. Если же изображение не может быть загружено по иным причинам (неверное соотношение сторон, размер и т.д.), загружается стандартное изображение из файла imagesres.dll. В таком случае вы увидите фоновое изображение в серых тонах, которое используется в Windows Server, что наталкивает на мысль о том, что эта функция не ограничивается лишь клиентскими версиями Windows.
|
-------
|
439
|
geepnozeex
| |
|
картинки логона находятся в файле imageres.dll в C:\Windows\System32. и в C:\Windows\winsxs\x86_microsoft-windows-imageres_31bf3856ad364e35_6.1.7264.0_none_4e392cb1661aa24b - в случае аварии восстанавливается оттуда. можно jpeg и BMP использовать.
|
|
|
Smarty
| |
Почетный
|
geepnozeex, Цитата (geepnozeex) и в C:\Windows\winsxs\x86_microsoft-windows-imageres_31bf3856ad364e35_6.1.7264.0_none_4e392cb1661aa24b » Может там хардлинк лежит, а не файл? Цитата (Drinko) Обратите внимание, что размер изображений не должен превышать 256Кб. » Если отредактировать imageres.dll в C:\Windows\System32, т.е. заменить фон логона на свой, то будет доступен 24-битный цвет!
|
|
|