問題タブ [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.

0 投票する
1 に答える
8959 参照

c# - セットアッププロジェクトでのインストール時にWindowsサービス名を指定する

目的:1台のマシンに複数のインスタンスがある可能性のあるWindowsサービスをサポートするには、セットアッププロジェクトを使用して、次の機能を備えたMSIを作成します。

  1. サービス名のユーザー入力を受信する
  2. インストールサービス
  3. サービス名を1からシリアル化する(適切な名前をロギングとアンインストールで使用できるようにするため)

私の最初の望みは、App.configでサービス名を設定することでした(そして、ServiceInstallerのインスタンス化時にアンインストール中にそれを取得します。インストール中にアクセスできないため、これは単純なようです。

MyInstallerがInstallerを拡張する場合、base.Install();を呼び出すことができます。ただし、app.configに書き込もうとすると(MyInstaller.Install()内およびbase.Install()の後)、効果がありません。

そのため、サービスはカスタムサービス名でインストールできますが、その名前はシリアル化されておらず、アンインストール時にインストーラーが最も不快になります。

これはどのように行う必要がありますか?

0 投票する
2 に答える
700 参照

visual-studio-2008 - インストーラーは、x64 システムのルートにのみインストールされます

Visual Studio 2008 で作成した MSI インストーラーは、指定されたディレクトリへのアプリのインストールを拒否し、代わりにルート ディレクトリにのみアプリをインストールします。同じ MSI を使用して x86 システムにインストールすると、インストーラーは指定されたディレクトリにアプリをインストールします。

Server 2008 と Win7 RC x64 (Hyper-V) でアプリと MSI を開発しています。どちらの開発プラットフォームでも同じ結果が得られます。

前もって感謝します!

0 投票する
2 に答える
22901 参照

c# - セットアップ プロジェクトにフォルダーを含める

セットアップ プロジェクトにフォルダーを含めて、そのセットアップをデプロイするときに完全なフォルダーもインストール場所にデプロイされるようにしたいと考えています。

0 投票する
1 に答える
88 参照

c# - Windows サービスがサービス リストに表示されない

.NET 1.1 でサービスを作成し、セットアップ プロジェクトを使用してそのサービスをインストールする必要があります。サービスを正常にインストールしましたが、サービス リストに表示されませんでした。

0 投票する
1 に答える
4044 参照

c# - インストール中にApp.configを強制的に上書きします

現在、クライアントソフトウェアには4つのインストーラーがあります。

  • ClientSetupTest
  • ClientSetupProduction
  • ClientUpdateTest
  • ClientUpdateProduction

それらの唯一の違いは、セットアップにはCrystal Reportsの再配布可能なファイルが含まれ、アップデートには含まれないことです。Test and Productionは、それらが実行される環境を指定するだけであり、唯一の違いはClient.exe.configファイルに1行あります。

ばかげている、私は知っている、それが私がCrystalReportsを取り除いた後にそれらすべてを1つのインストーラーに置き換えた理由です。新しいインストーラーは、選択した環境をsetup.configに書き込みます。これは、file属性によって参照されます(ここを参照)。

「file」属性は、この新しいインストーラーを使用した構成ファイルの新機能です。私が遭遇している問題は、古いインストールでClient.exe.configファイルを変更してから新しいインストーラーを実行すると、構成ファイルが「file」属性で更新されないことです。

ファイルを強制的に更新する方法はありますか?RemovePreviousVersionsは、私が何かを誤解していない限り、別のインストーラーであるため、正確には機能しません。おそらく機能する私の現在のアイデアは、OnBeforeInstallメソッドにコードを追加して、古いClient.exe.configの名前をバックアップファイルに変更することです。これにより、常に新しいファイルが書き込まれます。ただし、インストーラー自体にはもっと簡単な解決策があるはずです。何か案は?

編集:base.OnBeforeInstall()を呼び出す前に、古い構成ファイルの名前をClient.exe.config.oldに変更しても機能しませんでした。ファイルの名前を変更しましたが、新しいファイルを作成することはありませんでした。

0 投票する
2 に答える
3042 参照

installation - MSIでの修復オプションのカスタマイズ

1つの変更を除いて非常に基本的なVisualStudioセットアッププロジェクトがあります。ユーザーの選択に基づいてインストールしたい2つの異なるライブラリがあります。チェックボックス画面と条件をファイルに追加しました。コンポーネントのいずれかまたは両方をインストールできます。これはすべて正常に機能します。

今私の要件のために。ユーザーがMSIをインストールし、1つのコンポーネントのみを選択したとします。ここで、同じMSIから2番目のコンポーネントをインストールする必要があります。彼らがMSIを再度実行した場合、修復または削除するオプションが表示されます。修復では、最初にインストールされたコンポーネントのみが修正されます。チェックボックス画面を再度表示して、他のコンポーネントをインストールするオプションを提供するにはどうすればよいですか?

この機能がVSセットアッププロジェクトで利用できない場合、他に何かありますか?WiXはおそらく?

0 投票する
2 に答える
970 参照

visual-studio - Windows インストーラー パッケージを作成しようとしたときの Visual Studio の奇妙な動作

Visual Studio に重大な問題があり、Windows インストーラー パッケージを作成しようとしているので、新しいセットアップ プロジェクトを作成しましたが、[プロジェクト出力グループの追加] 機能が機能しません。ドロップダウン リストが空なので、何もできません。誰かが理由を知っていますか?

0 投票する
2 に答える
1911 参照

visual-studio-2008 - 参照された DLL に基づいて Visual Studio セットアップ プロジェクトの変数を変更することはできますか?

バージョン、製品名、作成者名などの製品情報を変更するときに、すべてのファイルを置き換えたくありません。Visual Studio セットアップ プロジェクトには、 TARGETDIRSystemFolderなどの定数変数があります。

参照されている DLL に基づいてセットアップ プロジェクトのプロパティを変更することはできますか?

PS。WiXはこれを行うことができますか?

0 投票する
3 に答える
1442 参照

.net - .NET セットアップ プロジェクトとアンインストーラー

アプリ用の VS セットアップ プロジェクトを作成しました。アプリをユーザー定義の場所にインストールし、スタート メニューにいくつかのショートカットを作成します。また、コントロール パネルの [プログラムの追加と削除] に、アプリケーションのアンインストールに使用できるエントリを作成します。

アプリをアンインストールできるスタート メニュー エントリ (セットアップによって作成された他のエントリの隣) を作成する方法があるかどうかを知りたいです。

これまでのところ、1 つの解決策を見つけましたが、使用するのuninstall.batは面倒です。アプリ フォルダーに展開するファイルを作成し、このファイルにショートカットを追加しています。の内容は次の*.batようになります。

このソリューションについて私が気に入らないのは、アプリの製品コードを更新するたびに (VS が示唆するようにアプリのバージョンを更新するたびにそうしています)、セットアップ プロジェクトをビルドして次のように入力する前に、このファイルを手動で編集する必要があることです。新しい製品コードを修正します。

アンインストーラーをアプリに追加する簡単な方法を知っている人はいますか?