Delphi. Встраивание XP Visual Manifest в ваше приложение:
Если ты программируешь на Делфи и юзаешь последние «Окошки», то должен был заметить одну неприятную вешь: В Windows XP программы, сделанные на Delphi не поддерживают визуальные стили. Обидно, но поправимо ?. Дело в том, что все переделанные елементы, которые отображаются в новом стиле, находятся в отдельной библиотеке ComCtl32.dll версии 6.0. (Если ты судорожно бросился искать этот файл, чтобы заменить им 5-ую версию в Windows 98, то остановись. ComCtl32.dll версии 6.0 работает только в Windows XP!)
Как же получается, что одни программы отображаются в новом стиле, а другие нет? Разработчики Windows XP для отображения приложений в старом стиле оставили версию 5.0, а для новых стилей добавили версию 6.0. Для того, чтобы новые программы корректно работали под предыдушими ОС в них по прежнему делается ссылка на старую версию библиотеки, а для новой ОС в ресурсах программы делается указатель на возможность поддержки новой версии библиотеки.
Вот наша задачка уже и прояснилась, необходимо просто напросто дополнительно запихнуть в программу этот ресурс и дело в шляпе.? Что же нам надо туда запихнуть?
4.В папке ../Program Files/Delphi/Bin/ появится файл с названием resfile.res – этот файл необходимо прописать в разделе implementation вашего приложения.
Вот так выглядела наша программа до встраивания манифеста:
А это она же, только после усовершенствования:
Сразу же оговорюсь! Колонки компонента TListView – это THeaderControl. Дело в том, что «родные» колонки компонента выдают ошибку при наведении на них курсора мыши. В чем причина этой ошибки я выяснить не смог, но замечу, что у меня Delphi6 PE. Как ведуд себя программы, сделанные в других версиях Delphi – я не знаю.
Автор статьи Константин Тарабрин aka Delphir [delphir@times.lv]