главная программы
resource tuner console
сборник примеров скриптов
Добавление или замена UAC манифеста приложения
Этот пример демонстрирует использование Resource Tuner Console для пакетного редактирования манифестов приложений из командной строки.
Этот код показывает, как можно пакетно редактировать манифесты в скомпилированных исполняемых файлах. Вы можете указать, следует ли заменить существующий манифест или добавить новый при его отсутствии.
Для демонстрации этой функциональности мы подготовили пример скрипта и тестовое приложение. После установки Resource Tuner Console на ваш компьютер вы найдёте папку "Demo Scrips" в установочном каталоге RTC, содержащую тестовое приложение DemoApp1.exe
в папке "Src".
Скрипт выполнит следующие операции:
- Добавление манифеста приложения в ресурсы файла
DemoApp1.exe
. - Добавление в ресурсы иконок из файлов .ICO и .PNG, расположенных в папке "Src". Эта операция необязательная и может быть закомментирована, если не нужна.
После обработки тестовый файл DemoApp1.exe
с добавленным манифестом будет сохранён в папку "Release". Вы можете просмотреть изменения, внесенные в ресурсы файла, проверив файл rtc.log
.
Примечание: при копировании кода скрипта, пожалуйста, убедитесь в отсутствии переносов строк внутри команд. Это требование VBScript: каждая команда должна располагаться целиком на одной строке.
Sub Main PEFileProxy.PostDebugString "Пересчёт контрольной суммы в заголовке файла вкл." PEFileProxy.UpdateCheckSum = True PEFileProxy.PostDebugString "Создание резервной копии отключено." PEFileProxy.CreateBackUp = False 'Указываем язык по умолчанию LangID = 0 ' Default 'Определяем и выводим CodePage в файл лога CodePage = ScriptUnit.CodePageFromLangID(LangID) PEFileProxy.PostDebugString "Значение CodePage для English-US: " & CStr(CodePage) ' Открытие файла для редактирования. ' Если открыт успешно, проверяем, есть ли в файле ресурсы. ' Если нет, создаём секцию ресурсов. If (PEFileProxy.OpenFileEx (".\src\DemoApp1.exe", True)) Then 'Заменяем/добавляем UAC Manifest PEFileProxy.PostDebugString "Редактируем UAC Manifest..." ResourcesProxy.ChangeManifest EXE_MANIFEST, LangID, CREATE_IF_NOT_EXIST, ".\src\exe_manifest.xml" '---- Дополнительные операции: Добавление иконок (в целях демонстрации) --------- PEFileProxy.PostDebugString "Добавляем/земеняем полный набор икон (10 штук)..." ResourcesProxy.ChangeIcon "", LangID, CREATE_IF_NOT_EXIST, REPLACE_IF_ITEM_EXISTS, ".\src\vista_iconset.ico" PEFileProxy.PostDebugString "Сортируем иконки в правильном порядке..." ResourcesProxy.SortGroupIcon "", True '-------------------------------------------------------------------------------- 'Строим и выводим дерево ресурсов в лог, чтобы показать изменения PEFileProxy.PostDebugString "" PEFileProxy.PostDebugString "Дерево ресурсов — построено с помощью RTC:" ResourcesProxy.ResourceTreeToLog PEFileProxy.PostDebugString "" '-------------------------------------------------------------------------------- 'Сохранение и закрытие файла PEFileProxy.PostDebugString "Сохраняем изменения в новый файл..." PEFileProxy.SaveAsNewImage ".\release\DemoApp1.exe" PEFileProxy.PostDebugString "Закрываем файл..." PEFileProxy.CloseFile Else 'Предупреждение в случае ошибки PEFileProxy.PostDebugString "При открытии файла произошла ошибка." End If End Sub
Чтобы посмотреть и проверить произведённые изменения в самом EXE файле, мы рекомендуем использовать Resource Tuner GUI, визуальный редактор ресурсов.
Примеры скриптов
Установив Resorce Tuner Console на свой компьютер, вы найдёте папку Demo Scripts
в директории с программой. Внутри этой папки находятся 12 папок с примерами скриптов и тестовыми файлами.
Все примеры скриптов готовы к применению. Чтобы запустить выполнение скрипта, выберете соответствующий .BAT файл в любой папке с примером. Resorce Tuner Console произведёт изменения в тестовом EXE файле, находящемся в папке Src
. Результирующий файл будет записан в папку Release
в директории, содержащей скрипт.
Пошаговое руководство по использованию скриптов
Скачать 60-дневную пробную версию Resource Tuner Console