Иллюстрированный самоучитель по Delphi 7 для профессионалов

Компонент TXPManifest. Включение манифеста Windows XP в ресурсы приложения.

На странице Win32 Палитры компонентов Delphi 7 имеется компонент TXPManifest. Будучи добавленным в проект, он обеспечивает компиляцию манифеста Windows XP в исполняемый файл приложения. В качестве основы используется стандартный манифест Delphi для Windows XP, содержащийся в файле ресурсов Delphi7\Lib\WindowsXP.res (листинг 6.2).

Листинг 6.2. Манифест Delphi для Windows XP.

<assembly xmlns="urn:schemas-microsoft-com:asm.vl" manifestVersion="l.0">
<assemblyIdentity
type="win32"
name="DelphiApplication"
version="3.2.0.0"
processorArchitecture="*"/>
<dependency>
<dependentAssembly>
Ossemblyldentity type="win32"
name="Microsoft.Windows.Common-Controls"
version="6.0.0.0"
publicKeyToken="6595b64144ccfldf
" language="*"
processorArchitecture="*"/>
</dependentAs sembly>
</dependency>
</assembly>

К сожалению, версия программного продукта (ProductVersion), а также любая другая информация о версии, содержащаяся в проекте (файлы DOF и RES) и настраиваемая в диалоге Project Options среды разработки Delphi, никак не влияет на содержимое манифеста. Поэтому при настройке манифеста в соответствии с потребностями приложения вам придется предварительно отредактировать файл WindowsXP.res или поправить манифест прямо в исполняемом файле. (Ввиду частых перекомпиляций проекта второй вариант представляется довольно обременительным.)

Включение манифеста Windows XP в ресурсы приложения

Так как использование стандартного компонента TXPManifest требует настройки исходного манифеста Delphi для каждого проекта, было бы неплохо изыскать более удобный способ. В качестве альтернативы вы можете подключить манифест к файлу вашего проекта и по мере надобности редактировать его, не опасаясь, что ваша забывчивость может отразиться на версиях в манифестах других приложений.

Для начала необходимо создать исходный файл ресурса RC, включающий единственную строку:

1 24 "ХР.manifest"

Где: 1 – номер ресурса версии библиотеки ComCtl32.dll, а 24 – номер ресурса манифеста (нумерация соответствует заголовочным файлам, распространяемых Microsoft); "ХР.manifest" – имя файла с документом XML, содержащим манифест. Естественно, манифест нужно настроить в соответствии с потребностями вашего проекта.

Теперь нужно откомпилировать файл ресурса при помощи строчного компилятора-ресурсов \Delphi7\Bin\brcc32.exe и разместить его в папке проекта.

И последняя операция – добавьте в исходный код файла проекта директиву подключения ресурса манифеста:

{$R xpmanifest.res}

В результате при компиляции проекта манифест из ресурса будет добавлен в исполняемый файл приложения.

Пример ресурсов манифеста имеется на дискете, прилагаемой к этой книге.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.