Microsoft SmartScreen - приостановлено с помощью установщика InnoSetup?

Я всегда использую InnoSetup для упаковки и публикации. Пользователи загружают приложение, используя ссылку, например: https://oursite.com/codesigned/mysetup.exe

До сих пор это всегда работало, но недавно мне пришлось обновить сертификат подписи кода, потому что срок его действия истек. После обновления у меня возникает проблема SmartScreen, каждый пользователь загружает приложение и получает этот Smartscreen, чего не было раньше.

я использовал signtoo.exe verify /pa innosetup-made-myexe.exe и это показывает, успешно, также я сделал проверку с Windows Application Certification Kit, это показывает, что оно ПРОЙДЕНО, но с ПРЕДУПРЕЖДЕНИЯМИ, все эти ПРЕДУПРЕЖДЕНИЯ, в основном, генерируются InnoSetup.

Здесь вы можете найти выходные данные, в которых отображаются предупреждения на InnoSetup:

https://docs.google.com/document/d/11frW_GxI0xSVcrAXh4_rqcKBQSaermAlpYKj4xzQi4o/pub

Как я могу решить эту проблему?

(все еще не уверен, что его стандартная подпись кода против проблемы с подписью кода EV? Я уже использовал стандартную подпись кода в течение нескольких лет, она всегда работала, я могу перейти на подпись кода EV, но как я могу убедиться, что это не проблема компилятора InnoSetup? как вы уже видно, что предупреждения отображаются в URL выше, чтобы InnoSetup)

Пожалуйста, порекомендуйте.

РЕДАКТИРОВАТЬ:

чтобы проверить, если его innosetup или проблема подписания кода (см. /questions/5430302/kak-peredat-umnyij-ekran-na-win8-pri-ustanovke-podpisannogo-prilozheniya/5430312#5430312) я сделал следующее:

а) от microsoft я скачал файл вызова winqual.exe который не нужен innosetup

б) я код подписал winqual.exe и загружен на мой же сервер

в) я скачал тот же файл с помощью Internet Explorer, и он работает, не показывая мне SmarTScreen

Имеет ли смысл сейчас, если innosetup является основной причиной этой проблемы?

3 ответа

Решение

Если вы считаете, что проблема связана с неподписанным деинсталлятором, убедитесь, что вы установили SignTool директива вашего проекта InnoSetup соответственно. И убедитесь, что SignedUninstaller директива имеет значение по умолчанию yes,

Цитирование http://www.jrsoftware.org/ishelp/index.php?topic=setup_signtool

Задает имя и параметры инструмента подписи, который будет использоваться для цифровой подписи программы установки (и удаления, если для SignedUninstaller установлено значение yes). Когда программа установки имеет действительную цифровую подпись, пользователи не увидят предупреждение "Неопознанная программа" при запуске.


Если вы хотите установить флаги NXCOMPAT и DYNAMICBASE на деинсталлятор, вы можете создать sign.bat командный файл, который вызывает оба signtool.exe а также editbin.exe:

@echo off
editbin.exe /NXCOMPAT /DYNAMICBASE %1
signtool.exe sign ... %1

Звонки должны быть в этом порядке, в противном случае editbin.exe ломает подпись.

Затем используйте sign.bat вместо signtool.exe в SignTool директивы.

Хотя я на самом деле не думаю, что это необходимо, и ничего не помогает.

Я думаю, что это нормальное поведение. Когда ваша программа соберет достаточно "лайков" = загрузит или установит SmrtScreen автоматически отключит это сообщение.

Это действительно раздражающая функция, потому что с каждым выпуском программного обеспечения вам нужно подождать подходящее время, пока программное обеспечение становится "популярным", и оно признано безопасным (никакие сертификаты или антивирусные методы не могут решить эту проблему).

Вам НЕ нужен этот «Комплект сертификации приложений Windows».

То, что говорит @slappy, правильно:

После обновления вашего сертификата вам потребуется достаточно загрузок и «хороших отзывов», прежде чем это сообщение исчезнет.

Что вам нужно сделать, так это загрузить свое приложение с помощью Microsoft Edge (не Chrome или Firefox!!!).

Скорее всего, он скажет: «Эта загрузка может быть опасной и заблокирована».

Затем вы можете выбрать «Все равно оставить». Затем вы можете выбрать «Сообщить как защищенный».

И ТОГДА даже Smart Screen говорит, что не доверяет вашему приложению (даже если оно имеет цифровую подпись, LOL!!!!), тогда вам нужно выбрать «Еще ...» и «Все равно установить».

Установите его на свой компьютер! Я думаю, это важно.

Я использовал 5 разных компьютеров, несколько раз отмечал свои приложения как безопасные и устанавливал их.

Я также попросил 2 друзей (из-за их разных IP-адресов) сделать то же самое.

Я так ненавижу это !!!!!!!!!! Через 1 день сообщение об ошибке исчезло.

Другие вопросы по тегам