Как внедрять файл манифеста в исполняемый файл в Visual Studio 2005


Обзор


В этой статье описывается, как внедрить файл манифеста в исполняемый файл (.exe) в Microsoft Visual Studio 2005. Разработка программы «Сертифицировано для Windows Vista», необходимо внедрить файл манифеста в исполняемый файл.

Дополнительные сведения


В этой статье, заполнитель appname ссылается на пример приложения. Необходимо заменить местозаполнитель appname настоящее имя приложения.

Чтобы внедрить файл манифеста в исполняемый файл, выполните следующие действия.
  1. В Visual Studio 2005 откройте приложение.
  2. В меню Построение выберите Диспетчер конфигураций.
  3. В окне «Диспетчер конфигураций» определите, существует ли уже x86 элемент в списке Платформа активного решения .
    • Если элемент x86 не существует, перейдите к шагу 4.
    • Если элемент x86 уже существует, выберите < редактировать... > в списке Платформа активного решения . В диалоговом окне Изменение платформ решения нажмите кнопку x86, нажмите кнопку Удалитьи затем нажмите кнопку Закрыть.
  4. В окне Диспетчер конфигураций выберите < Создать > в списке Платформа активного решения .
  5. В диалоговом окне Новая платформа решения , тип x86 в поле Введите или выберите новую платформу выберите < пустой > Копировать параметры из списка, снимите флажок Создать новые платформы проекта и нажмите кнопку ОК.
  6. В окне диспетчера конфигурации нажмите кнопку Закрыть.

    Примечание. При использовании сценария после построения для вызова файла MT.exe удалите сценарий после построения. В этом случае нет необходимости вызывать MT.exe файла для внедрения в файл манифеста.
  7. В меню Построение выберите команду Перестроить решение.
  8. В меню файл выберите команду Закрыть решение.
  9. Запустите Блокнот и вставьте следующий код в новый документ:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?><assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
    <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
    <security>
    <requestedPrivileges>
    <requestedExecutionLevel level="asInvoker" uiAccess="false"/>
    </requestedPrivileges>
    </security>
    </trustInfo>
    </assembly>

  10. В меню файл выберите команду Сохранить каки сохраните этот файл как appname. exe.manifest.
  11. В меню файл выберите команду Закрыть.
  12. В Visual Studio 2005 откройте файл appname.exe . Отображается представление в виде дерева.
  13. Щелкните узел appname.exe , а затем выберите Добавить ресурс.
  14. В диалоговом окне Добавить ресурс , нажмите кнопку Импорт, найдите appname. exe.manifest файл и нажмите кнопку Открыть.
  15. В диалоговом окне Пользовательский тип ресурса RT_MANIFESTвведите и нажмите кнопку ОК.
  16. В панели « Свойства » измените значение свойства ID из «101» значение «1».

    Примечание. Если вы хотите проверить правильность XML-кода в манифесте, дважды щелкните манифест в древовидном представлении для просмотра в двоичный файл. Отображаются данные в формате ASCII.
  17. В меню файл выберите команду Сохранить все.
Если файл appname.exe является частью приложения для развертывания ClickOnce, необходимо обновить файл манифеста приложения ClickOnce и файл манифеста развертывания. Это необходимо сделать, поскольку хэш исполняемого файла изменяется при внедрении файла манифеста в исполняемый файл. Чтобы обновить файл манифеста приложения ClickOnce и файл манифеста развертывания, используйте манифест средства создания и редактирования. Можно использовать версии командной строки (Mage.exe) или версии Windows Forms (MageUI.exe).

При использовании Mage.exe, откройте командную строку, доступ к каталогу, где хранятся Mage.exe и затем выполните следующие две команды:
-u Mage.exe каталог назначения файла appname.exe.manifest\appname.exe.manifest -имя «AppName»-- cf исходный каталог файл appname.exe.manifest каталог PFX-файлверсии версия приложения - FromDirectory \name.pfx - pwd «пароль»

-u Mage.exe каталог файлов ".Application"\ - appmappname.application файл appname.exe.manifest каталог\appname.exe.manifest - cf каталоге файл .pfx\name.pfx - pwd «пароль»