2017-04-04 5 views
0

InstallShieldを使用してWindowsアプリケーションをインストールする場所があります。インストーラは、インターネット上のログインが確保された場所に掲載されます。プログラムが起動すると、ダウンロードサイトをチェックして更新が必要かどうかを確認し、そうであればユーザーをサイトに誘導してアプリケーションを更新します。Windowsアプリケーションとインストーラのバージョンを同期する方法

問題はバージョン番号です。アプリケーションは独自のバージョン番号を知っているので、インストーラのバージョン番号を読むことができるサイトを作るためのAPIを作成することができますが、どのように同期させることができますか?ビルドがあるたびに手作業で行う必要はありません。

インストーラはログイン用の壁の後ろにある必要があり、直接リンクすることはできないため、サイトはバイナリストリームでユーザーにフィードを送信します。私はClickOnceを試していましたが、シングルファイルインストーラを作成する方法を見つけることができず、更新する際に承認を許可しませんでした。

答えて

0

最善のアプローチは、物事を構築する方法によって異なります。この回答は、ビルドシステムを使用して各バージョン番号を提示し、それをすべてのビルド済みアイテムの下流に指定していることを前提としています。

IsCmdBld ... -z "ProductVersion=1.2.3.4"を使用して、コマンドラインでバージョンを指定できます。 ProductVersionの(オプションの)4番目のフィールドは、Windowsインストーラによってほとんど無視され、必要に応じてバージョン番号付けスキームを調整することを考慮してください。

また、オートメーションインターフェイスを使用してプロジェクトを編集し、ProductVersionをISWiProject objectに設定することもできます。これはより柔軟ですが、後でビルドする前にプロジェクトを変更する必要があります。

関連する問題