質問

ユーザーがインストーラーをクリックしても不明なベンダーが表示されないようにコードに署名する手順は何ですか。

私の設定は、

アプリケーションはJavaベースです。 jarをlaunch4jでラップします インストーラーはnsisに基づいています。

私のビルドプラットフォームはxpです。

インストールが完了すると、nsisではなくvistaからインストールが成功しなかったというポップアップが表示されます。どうすれば削除できますか?

役に立ちましたか?

解決

警告を取り除くには、setup.exeに署名する必要があります。 microsoft signtool.exeとコード署名証明書を取得し(PCにインポートされていることを確認)、バッチファイルを作成します。

signtool sign / v / s my / n" My Display Company" / d"マイディスプレイアプリケーション" / du"サポートURL" / t" http://timestamp.verisign.com/scripts/timstamp.dll" path_to_setup.exe

SignTool.exeはVisual StudioおよびPlatform SDKによってインストールされます。少しグーグルで検索してください。

他のヒント

JarSigner をご覧ください。これは公開鍵インフラストラクチャを使用して機能するため、CAによって署名された証明書を取得する必要があります。 AntとMavenの両方には、jarをビルドするときにこれを行うプラグインがあります。これは、launch4jおよびnsisでラップする前に、jarに対して行う必要があります。

nsisには慣れていませんが、インストーラーがJavaベースの場合、出力jarにも署名する必要があります。

launch4jの仕組みはわかりませんが、NSISスクリプトを変更できると思います。おそらく、「CRCCheck off」を追加する必要があります。 .exeに署名する場合。

RequestExecutionLevel(ユーザーまたは管理者)をnsisスクリプトに追加すると、Vistaの警告がなくなります(レジストリにアンインストールエントリが追加されず、exeにVistaマニフェストがない場合、インストーラーとして検出されるプログラムはこの警告を表示します) )

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top