Windows XP 上的 Lauch4J/NSIS 安装程序的代码签名?

发布于 2024-07-29 06:35:41 字数 207 浏览 11 评论 0原文

签署我的代码的过程是什么,以便当用户单击安装程序时不会提示未知供应商。

我的设置是,

应用程序是基于java的。 我用 launch4j 包装 jar 安装程序基于 nsis。

我的构建平台是xp。

另一件事是,安装完成后,我收到一个弹出窗口,提示安装未成功,来自 vista,而不是 nsis,我该如何摆脱它?

What is the procedure for signing my code so that when user clicks on the installer it does not prompt unknown vendor.

My Setup is,

Application is java based.
I wrap jar with launch4j
Installer is based on nsis.

My build platform is xp.

One other thing when installation is finished i get a pop up saying installation was not succesfull from vista not nsis how can i get rid of it?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

知你几分 2024-08-05 06:35:41

要消除警告,您需要对 setup.exe 进行签名。 获取 microsoft signtool.exe 和代码签名证书(确保将其导入到您的 PC 中),然后创建一个批处理文件:

signtool sign /v /s my /n "My Display Company" /d "My Display Application" / du“我的支持 URL”/t“http://timestamp.verisign.com/scripts/timstamp .dll" path_to_setup.exe

SignTool.exe 由 Visual Studio 和 Platform SDK 安装,只需 google 一下即可。

To get rid of the warning, you need to sign the setup.exe. Get the microsoft signtool.exe and a code signing certificate (make sure it is imported into your PC) then just create a batch file:

signtool sign /v /s my /n "My Display Company" /d "My Display Application" /du "My Support URL" /t "http://timestamp.verisign.com/scripts/timstamp.dll" path_to_setup.exe

SignTool.exe is installed by Visual Studio and by the Platform SDKs, just google a bit.

公布 2024-08-05 06:35:41

查看 JarSigner。 它使用公钥基础设施工作,因此您需要花费 $$$ 获得由 CA 签名的 ket。 Ant 和 Maven 都有插件可以在您构建 jar 时为您执行此操作。 在使用 launch4j 和 nsis 包装您的 jar 之前,需要对它们执行此操作。

我不熟悉 nsis,但如果安装程序是基于 java 的,您可能还需要对其输出 jar 进行签名。

Have a look at the JarSigner. It works using the public key infrastructure so you'll need to get a ket signed by a CA somewhere which costs $$$. Both Ant and Maven have plugins to do this for you when you build your jar. This needs to be done to your jars before they are wrapped with launch4j and nsis.

I'm not familiar with nsis, but if the installer is java based, you may need to sign it's output jar as well.

悸初 2024-08-05 06:35:41

我不知道 launch4j 是如何工作的,但我假设您能够更改 NSIS 脚本。 如果您要签署 .exe,您可能必须添加“CRCCheck off”。

将 RequestExecutionLevel(用户或管理员)添加到 nsis 脚本应该可以消除 Vista 警告(如果注册表中没有添加卸载条目并且 exe 没有 Vista 清单,则被检测为安装程序的程序将显示此警告)

I don't know how launch4j works, but I assume you are able to change the NSIS script. You probably have to add "CRCCheck off" if you are going to sign the .exe.

Adding RequestExecutionLevel (user or admin) to the nsis script should get rid of the Vista warning (Programs that are detected as installers will show this warning if no uninstall entry is added to the registry and the exe does not have a Vista manifest)

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文