Поделиться через


Практическое руководство. Подписывание файлов установки с помощью программы SignTool.exe (ClickOnce)

Для подписи программы установки (setup.exe) можно использовать средство SignTool.exe. Это позволяет не допустить установки поддельных файлов на компьютерах пользователей.

По умолчанию ClickOnce имеет подписанные манифесты и подписанную программу установки. Однако если требуется позднее изменить параметры программы установки, подписать программу установки необходимо позже. Если изменить параметры после того как программа установки подписана, подпись будет повреждена.

Следующая процедура создает неподписанные манифесты и неподписанную программу установки. После этого в Visual Studio доступно подписывание ClickOnce для создания подписанных манифестов. Программа установки оставлена неподписанной для того, чтобы клиент мог подписать исполняемый файл своим сертификатом.

Чтобы создать неподписанную программу установки, а затем позднее подписать ее

  1. на компьютере разработчика, установите сертификат, которым требуется подписывать манифесты.

  2. Выберите проект в обозревателе решений.

  3. В меню Проект выберите пункт Свойства: имя_проекта.

  4. На странице Подпись снимите флажок Подписать манифесты ClickOnce.

  5. На странице Публикация нажмите Необходимые компоненты.

  6. Убедитесь, что выбраны все необходимые компоненты и нажмите кнопку ОК.

  7. На странице Публикация проверьте параметры публикации и нажмите кнопку Опубликовать сейчас.

    Решение публикует неподписанный манифест приложения, неподписанный манифест развертывания, файлы для конкретной версии и неподписанную программу установки в местоположении каталога публикации.

  8. На странице Публикация нажмите Необходимые компоненты.

  9. В диалоговом окне Необходимые компоненты снимите флажок Создать программу установки для необходимых компонентов.

  10. На странице Публикация проверьте параметры публикации и нажмите кнопку Опубликовать сейчас.

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

  11. На сайте клиента откройте командную строку.

  12. Перейдите в каталог, содержащий EXE-файл.

  13. Подпишите EXE-файл с помощью следующей команды:

    signtool sign /sha1 CertificateHash Setup.exe
    signtool sign /f CertFileName Setup.exe
    

    Например, чтобы подписать программу установки, воспользуйтесь следующими командами:

    signtool sign /sha1 CCB... Setup.exe
    signtool sign /f CertFileName Setup.exe
    

См. также

Задачи

Практическое руководство. Повторное подписание манифестов приложения и развертывания

Другие ресурсы

Практическое руководство. Подписывание файлов установки с помощью программы SignTool.exe (установщик Windows)