Подписание кода для моего установщика Lauch4J / NSIS в Windows XP? - PullRequest
0 голосов
/ 01 августа 2009

Какова процедура подписания моего кода, чтобы, когда пользователь нажимает на установщик, он не запрашивал неизвестного поставщика.

Мои настройки:

Приложение на основе Java. Я оборачиваю банку с launch4j Установщик основан на nsis.

Моя платформа сборки xp.

Еще одна вещь, когда установка закончена, я получаю всплывающее окно, в котором говорится, что установка не была успешной из перспективы, а не nsis, как я могу от нее избавиться?

Ответы [ 3 ]

1 голос
/ 24 июня 2010

Чтобы избавиться от предупреждения, необходимо подписать файл setup.exe. Получите файл microsoft signtool.exe и сертификат для подписи кода (убедитесь, что он импортирован на ваш компьютер), а затем просто создайте командный файл:

signtool sign / v / s my / n "Моя медийная компания" / d "My Display Application" / du "URL моей поддержки" / t "http://timestamp.verisign.com/scripts/timstamp.dll" path_to_setup.exe

SignTool.exe устанавливается Visual Studio и пакетами SDK, просто немного погуглите.

0 голосов
/ 01 августа 2009

Я не знаю, как работает launch4j, но я предполагаю, что вы можете изменить скрипт NSIS. Возможно, вам придется добавить «CRCCheck off», если вы собираетесь подписать .exe.

Добавление RequestExecutionLevel (пользователь или администратор) к сценарию nsis должно избавить от предупреждения Vista (программы, которые определяются как установщики, будут отображать это предупреждение, если в реестр не добавлена ​​запись удаления, а у exe нет манифеста Vista )

0 голосов
/ 01 августа 2009

Посмотрите на JarSigner . Он работает с использованием инфраструктуры открытого ключа, поэтому вам нужно получить кет, подписанный центром сертификации, где он стоит $$$. И у Ant, и у Maven есть плагины, которые сделают это для вас, когда вы создаете банку. Это нужно сделать с вашими банками, прежде чем они будут упакованы с launch4j и nsis.

Я не знаком с nsis, но если установщик основан на java, вам может понадобиться подписать и его выходной jar.

...