Windowsインストーラーのマニフェストを作成するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/1408202

質問

他の多くのインストーラーと同様に、アプリケーションのインストーラーをダウンロードし、管理者権限で実行する必要があります。ただし、インストーラーの名前は" setup.exe"ではないため、Windowsは実行に昇格が必要であると自動的に検出しません。

インストーラー名を変更して適切に昇格させると、率直に言って非常に面倒になります。 この記事はUACと昇格について多くのことを語っており、マニフェストを使用して、認証が必要なものを作成できます。

したがって、インストーラーのマニフェストを作成したいだけです。ただし、マニフェストが存在することをどのように確認しますか?ユーザーがour_application_v13.exeをダウンロードした場合、どのようにしてマニフェストも取得しますか?知る限り、マニフェストは" our_application_v13.exe.manifest"という名前のファイルでなければなりません。その場合。

彼らは私たちのウェブサイトからファイルをダウンロードしているだけなので、どのようにしてマニフェストも取得するのでしょうか?何らかの方法で実行可能ファイルにビルドできますか、それ以外の場合は実行可能ファイルに昇格が必要であるというフラグを立てることができますか?数百年前のインストーラツールを使用しており、変更できないため、これに関連する機能はありません。

ありがとう!

役に立ちましたか?

解決

インストーラーツールで生成されたEXEファイルのリソースを変更/添付/編集できる場合、リソースタイプ24(WindowsヘッダーのRT_MANIFEST)とリソースIDのリソースとしてマニフェストファイルを追加できます。 1。

インストーラツールにリソースを挿入するための組み込み機能がない場合は、install.exeファイルを後処理してリソースを挿入するツールを作成する必要があります。 Windows API BeginUpdateResouce およびEndUpdateResourceを検索します。これらにはいくつかの制限があります-EXEにリソースファイルがまったく含まれていない場合は動作しませんが、ほとんどのインストールツールで生成されたexeファイルには少なくともバージョン情報リソースが含まれます。

また、インストールがデジタル署名されている場合は、マニフェストリソースの挿入後に行う必要があります。


また、 mt。 Platform SDKに含まれているexe およびVisual Studioのほとんどのバージョンには、マニフェストリソースを埋め込み、抽出、およびマージするオプションがあります。

他のヒント

マニフェストは、アプリケーションのネイティブリソースセクション(EXE内)にもあります。

Heaventools Softwareの Resource Tuner Console があります。

  

Resource Tuner Consoleは、開発者がインストールexeファイルの後処理を自動化し、マニフェストリソースを挿入できるようにするコマンドラインツールです。詳細については、特に[アプリケーションマニフェストの追加]ページをご覧ください。

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