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


Файл <файл> не был подписан

Файл <файл> не был подписан.Проект развертывания содержит устаревшие свойства подписи.Дополнительные сведения см. в справке.

Возможность подписывания, доступная в Visual Studio версии 2003 и более ранних версиях, была удалена из проектов установки и развертывания (Проекты установки, Проекты установки веб-приложений, CAB-проекты и Модули слияния). Если проект Visual Studio 2003 с включенным подписыванием был импортирован в Visual Studio 2005, либо если необходимо использовать подписывание для проекта развертывания, то в таком случае после построения можно воспользоваться средством подписывания сборок Signtool.exe, входящим в состав Windows Platform SDK. Дополнительные сведения см. в разделе SignTool.exe (программа подписывания).

В самом простом случае свободные файлы отсутствуют, только загрузчик приложения (Setup.exe) и/или файл пакета, являющийся выходным файлом при построении (пакет установщика Windows, CAB-файл или модуль слияния). В этом случае можно будет вызвать средство SignTool.exe в диалоговом окне события после построения.

В более сложном случае файлы, составляющие развертывание, могут быть свободными, что означает, что выходными файлами построения являются не только загрузчик приложения и пакет установщика Windows. Часто требуется, чтобы эти дополнительные файлы также были подписаны и пакет установщика Windows был обновлен в соответствии с хэш-кодом каждого подписанного компонента. Это должно быть выполнено в событии после построения, запускающем скрипт для выполнения следующих действий:

  1. Итерация набора свободных файлов и CAB-файлов в папке выходных элементов построения и их подписывание с помощью средства SignTool.exe.

  2. Обновление хэш-кода для каждого подписанного файла в пакете установщика Windows.

  3. Подписывание загрузчика приложения и пакета установщика Windows с помощью средства SignTool.exe.

Чтобы исправить эту ошибку в простом случае

  • Вызовите средство SignTool.exe в диалоговом окне события после построения.

    <Каталог установки SDK>SignTool sign –f "filename.pfx" –p "пароль" $(BuiltOuputPath)\Setup2.msi

    <Каталог установки SDK>SignTool sign –f "filename.pfx" –p "пароль" $(BuiltOuputPath)\setup.exe

Если сертификат хранится в файлах PVK и SPC, то можно использовать средство Windows Platform SDK pvk2pfx.exe для преобразования формата этих файлов в файлы с расширением PFX.

См. также

Ссылки

Диалоговые окна сборки, свойств конфигурации и свойств проекта развертывания

SignTool.exe (программа подписывания)