Интеграция манифеста в программу на Delphi

В версии Delphi XE2, на конец то, была добавлена возможность подключать кастомный манифест к проекту. А до этого выкручивались как могли.

В основном, при необходимости подключить свой манифест (обычно для получения прав администратора), шли следующим путем:

  1. Создавали файл манифеста ProjectName.exe.manifest
  1. Создавали файл ресурсов manifest.rc
  1. Далее компилируется файл ресурсов
  1. Откомпилированный файл ресурсов подключается к проекту
  1. И последнее действие, это отключение "runtime themes". В результате чего все интерактивные элементы приложения принимали классический вид. Обойти данный пункт нельзя было, так как в противном случае к исходной программе подключалось два манифеста, и достичь желаемого результата не удавалось.

У меня, в свое время, возникла острая необходимость получить права администратора и при этом использовать "runtime themes". Методом "научного тыка" я определил, что delphi генерирует файл манифеста при создании нового проекта и кладет его в самый конец файла ресурсов ProjectName.res. И, что примечательно, манифест создается один раз и больше не изменяется. Я решил подменить манифест и для этой цели сделал небольшую программу. Единственная проблема состоит в том, что так как файл ресурсов уже откомпилирован, то есть бинарный, количество символов во внедряемом манифесте не должно превышать количество символов исходного манифеста.

Программа для изменения манифеста в проектах Delphi

Программа простая и интуитивно понятная. Кастомный манифест можно загрузить из файла или прописать вручную. Функция интеграции находится тут «Файл»->«Интегрировать манифест». Выбранный файл ресурсов перезаписывается, а старая копия сохраняется с расширением «bk».

Если возникает проблема с количеством символов, то можно манифест подредактировать прямо в окне программы. Как вариант можно по удалять лишние пробелы и переносы строк.



Скачать:
Программа для интеграции кастомного манифеста в проекты на Delphi версии ниже XE2 с исходниками
 
Поделиться:

Новости сайта

17.08.2019 17:03
Новая версия библиотек для Delphi
Загружена новая версия библиотек для Delphi от 17.08.2019г.
16.08.2019 22:36
Добавлено описание модуля KRGoogleAuth.pas
Опубликована статья с виде обзором, описывающая компонент авторизации в Google OAuth2
08.08.2019 21:55
Новая статья KRBoundLabel
Добавлена новая статья описывающая класс метки TKRBoundLabel
01.08.2019 22:03
Новая статья KRTimer.pas
Добавлена статья описывающая модуль KRTimer.pas

Популярные статьи

Modbus Slave на Arduino
Реализация клиентской части протокола Modbus RTU и Modbus ASCII для контроллеров Arduino
Пример передачи данных по протоколу Modbus на Delphi
Пример передачи данных с контроллера ОВЕН ПЛК100 в программу на Delphi по протоколу Modbus
Набор компонентов для Delphi
Набор компонентов для Delphi включает в себя компонент для работы с файловой системой, сетью, автоматизацией и другие.
Программа SimpleADB
Программа SimpleADB для отладки Android устройств, работающая посредством утилиты adb(Android Debug Bridge)