問題タブ [setup-project]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
visual-studio - バージョンに応じてMSIパッケージ名を生成するにはどうすればよいですか?
Visual Studioセットアッププロジェクトで、現在のアプリケーションのバージョン番号に従ってMSI fileNameを自動的に生成する方法はありますか?
visual-studio - Visual Studio セットアップ プロジェクトがレジストリにキーを追加できない
COM コンポーネントを登録するために Visual Studio 2008 でセットアップ パッケージを作成しています。アクションの 1 つは、いくつかのキーをレジストリに追加することです。
それについての奇妙なことは、インストーラーを実行すると、キー階層が正しく作成されますが、作成される階層の最後のキーの GUID が間違っています...一方、インストーラーでは正しい...誰かがこれに遭遇したり、何がうまくいかないかについての提案はありますか?
ありがとう
visual-studio-2005 - VS2005 の Setup & Deployment Project で既存のファイルを上書きしないように MSI に指示するにはどうすればよいですか?
VS2005 でセットアップと展開のプロジェクトを作成しました。インストールするファイルの 1 つは、SQLite データ ファイルです。
ソフトウェアの新しいバージョンをリリースしようとしていますが、既存のインストールで更新を実行すると、データ ファイルが上書きされることがわかりました。
セットアップ プロジェクトに更新されたデータ ファイルがあるので、既にインストールされているものよりも新しいですが、上書きしたくありません。
そのファイルの Permanent プロパティを True に設定しようとしましたが、役に立ちませんでした。
助言がありますか?
deployment - セットアッププロジェクトを使用したSQLCompactEdition(SDFファイル)の展開
SQL Compact Editionをデータストアとして使用しているC#.NETデスクトップアプリケーションがあります。アプリケーションは、マシン上のすべてのユーザーが使用する必要があり、すべてのユーザーが同じデータを表示する必要があります(データはユーザーごとに異なるべきではありません)。
SDFファイルをどこにデプロイすればよいのでしょうか。
- ユーザーの個人データフォルダー(マイドキュメント)は、各ユーザーが個別のデータベースを持つことを意味します。
- アプリケーションと同じフォルダーにデプロイすると、vistaはファイルを\ USers \ Appdata \ local \ VirtualStore \にコピーし、ユーザーごとに異なるコピーを作成するように見えます。
すべてのユーザーが同じデータを見ていることを確認するために、SDFファイルを展開するのに最適な場所はどこですか?
visual-studio - Visual Studioセットアッププロジェクトの[チェックボックス(A)]ダイアログと[チェックボックス(B)]ダイアログの違いは何ですか?
Visual Studioのセットアップと展開プロジェクトでは、インストーラーのユーザーインターフェイスを設計できます。ウェルカム画面、ライセンス承認ダイアログ、およびインストール場所ダイアログがあります。すべて良い。
ファイルの関連付けの変更を確認するために、もう1つのダイアログを含めたいと思います。これを行う方法は、チェックボックスのあるダイアログを使用することだと思います。
UIノードを右クリックし、[ダイアログの追加]を選択すると、次の選択肢が表示されます。
これらのチェックボックスダイアログの違いは何ですか?
RTFMを試しましたが、これらのオプションに関するドキュメントが見つかりませんでした。
visual-studio - Visual Studioセットアッププロジェクトで、チェックボックスダイアログを条件としてレジストリの更新を行うにはどうすればよいですか?
現在、セットアッププロジェクト内のレジストリ設定を使用して、アプリケーションのファイルの関連付けと関連付けられたファイルのアイコンを設定しています。
一般的なVSセットアッププロジェクトでは、レジストリの更新は常に行われます。チェックボックスダイアログの状態を条件としてレジストリを更新するにはどうすればよいですか?
visual-studio - Visual Studioセットアッププロジェクトで、アンインストールスクリプトを生成するにはどうすればよいですか?
VisualStudioセットアッププロジェクトがあります。インストール時に、アプリケーションフォルダにアンインストールバッチファイルが作成されます。ユーザーが製品をアンインストールしたい場合は、「プログラムの追加と削除」に移動するか、uninstall.cmdをダブルクリックするだけです。内容は次のとおりです。
GUIDは、VisualStudioのセットアッププロジェクトからのProductCodeです。
ただし、アップグレードが正しく機能するためには、新しいMSIを作成するたびにバージョン番号をインクリメントする必要があります。また、バージョン番号をインクリメントする場合は、ProductCodeの新しいGUIDも生成する必要があります。つまり、静的なuninstall.cmdファイルを変更する必要があります。
ビルド時に、のProductCodeを含むバッチファイルを動的に生成するにはどうすればよいですか?
visual-studio - VS セットアップ プロジェクト。アンインストール時にレジストリ値を復元する方法は?
Visual Studio にセットアップ プロジェクトがあります。通常のインストールの一環として、Windows レジストリにいくつかのキーと値を作成/更新します。更新を元に戻すにはどうすればよいですか?
「リバーシブル」と言うかもしれませんが、私はそうは思いません。VS デザイナーを使用して、必要なレジストリ キーと値を指定します。これらのキーと値は、インストール中に書き込まれ、アンインストール中に削除されます。単純。可逆的でないものは何ですか?
インストール中に書き込まれたキーの 1 つに既存の値がある場合に問題が発生します。値が 1 であるとします。次に、新しいインストールで値が 100 になります。アンインストール後、値はまったくなくなります。値はなくなります。
「カスタムアクション」でこれを回避しようとしました。
インストール中にユーザーが確認すると、msiexec は値をレジストリに書き込みます。以前にレジストリ キーにあったものはすべてなくなりました。(これを「アップデート A」と呼びましょう)
その値を保持するために、インストール時に、「前」の設定を読み取って保持するカスタム アクションがあります。「アップデート A」の前に実行されます。ここまでは順調ですね。
アンインストール時の通常の手順は、インストール中に追加された通常のレジストリ キーと値を削除することです。これはうまくいきます。これを「更新 B」と呼びます。
元のレジストリ値を復元するために、別の「カスタム アクション」があります。これはアンインストール時に実行されます。元の値がレジストリに正常に復元されます。レジストリは、元のインストール前とまったく同じように見えます。ProcMon (レジストリの更新などを監視できるツール) を使用して、これが機能することを確認しました。これを「更新 C」と呼びます。
1つだけ問題があります。アンインストール時に、更新 C の後に更新 B が実行されます。つまり、カスタム アクションが元のレジストリ設定を復元した後、msi は、他のすべてのレジストリ更新と同様に、復元された値を消去します。
その結果、レジストリには、復元された値ではなく空の値が含まれます。
何か助けはありますか?アップデートを再注文するにはどうすればよいですか? これにはオルカが必要ですか?これを実現するために別のツールをインストールして学習したくありません。それも自動化してほしい。これを実現するために、MSI エディターを視覚的にクリックする必要は絶対にありません。
WindowsInstaller.Installerクラス を使用する Javascript ビルド後のイベントでこれを行うことはできますか? Aaron Stebnerは、「インストール後にアプリケーションを起動しますか?」を追加するスクリプトを公開しました。Visual Studio によって生成された MSI へのダイアログ。Windows インストーラーは「アプリの起動」機能をサポートしていますが、VS2008/2005 のデザイナーでは公開されていません。[Launch] ダイアログに追加された、VS のビルド後のステップとして実行されるクイック biolerplate スクリプト。
カスタムアクションの順序付けで同様のことが可能ですか?
visual-studio - スクリプトとして定義されたカスタムアクション-これを「バイナリテーブルストリーム」にすることはできますか?
vS2008で定義されているMSIプロジェクトの一部としていくつかのカスタムアクションがあります。
アクションは短いJavascriptとして定義されています。インストール時に実行される2つと、アンインストール時に実行される1つがあります。すべてが正常に動作します。
これらのスクリプトは、アプリケーションフォルダに通常のファイルとしてインストールされます。インストール中に実行されるスクリプトは、実行の最後に自分自身を削除します。アンインストール時に実行されるスクリプトは、必要になるまでアプリケーションディレクトリにあります。
MSIには「バイナリテーブルストリーム」と呼ばれるものがあることを知りました。どのように機能するかはわかりませんが、カスタムアクションスクリプトはバイナリテーブルストリームとして保存できるようです。つまり、ファイルシステムにインストールされません。
VS2008で、バイナリテーブルストリームとしてMSIに埋め込まれるカスタムアクションスクリプトを構成できますか?
編集:バイナリテーブルストリームは単なる言い方だと思います。問題のファイルは、MSIの「Binary」という名前のテーブルに保存されています。
その場合、おそらく別の質問があります。MSIを後処理して、スクリプトを「バイナリテーブルではない」からバイナリテーブルに移動できますか?
visual-studio-2008 - VS2008 セットアップおよび展開プロジェクトで作成されたショートカットの大きな Vista アイコンを取得するにはどうすればよいですか?
最初にアプリを作成し、そのアプリのアイコンを自分で作成したアイコンに設定しました。そのアイコンには 256x256px があり、Windows Vista で適切に動作します (非常に大きなアイコンの場合は 256 サイズが使用されます)。
作成したアプリをインストールするセットアップ プロジェクトを作成し、デスクトップにショートカットを追加しました。ショートカットのアイコンは大きくならず、最大で +- 48x48 のままです。セットアップ プロジェクトがアイコンを変更して、大きなバージョンを削除するかのようです。アプリ自体のアイコンは良いが、ショートカットだけが悪い
アプリに埋め込まれたアイコンを指すショートカット アイコンが機能しませんでした。別のアイコン ファイルを指定しても機能しませんでした。
256 サイズの正しいアイコンを使用するためのショートカットを取得するにはどうすればよいですか?
編集:スクリプト可能なソリューションは素晴らしいでしょう!