問題タブ [wix]
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 - 自動リリース スクリプトと Visual Studio セットアップ プロジェクト
ここにいるほとんどの人は、完全に自動化されたビルドの重要性を理解していると思います。
問題は、私たちのプロジェクトの 1 つが統合された Visual Studio セットアップ プロジェクト (vdproj) を使用しており、最近 Visual Studio 2008 に移植されたことです。明らかに、すべてのマルチコアコンピューターでそれを行います(!!!)。したがって、.Net 2.0 および 2005 にロールバックするか、単に Visual Studio の展開を放棄するかを選択できますが、まず、セカンドオピニオンが必要です。
IDEを開いて何かをクリックする必要のない.vdprojを構築する別の自動化された方法を知っている人はいますか?
vdproj を捨てると言ったとき、私は WiX を念頭に置いていました。あなたはそれについて何か経験がありますか、良いこと、警告はありますか?
wix - WiX インストール セットを同じフォルダにアップグレードする
元のインストールと同じフォルダにWiXインストールでビルドされたインストール セット (MSI) をメジャー アップグレードするにはどうすればよいですか?
インストールはアップグレードとして正しく検出されますが、ディレクトリ選択画面はデフォルト値のまま表示されます (現在のインストール フォルダとは限りません)。
最初のインストール時にレジストリ キーにインストール フォルダを保存し、アップグレード時にこのキーを読み取るなど、手作業を行う必要がありますか? もしそうなら、何か例はありますか?
または、 MSIまたは WiXでこれを実現する簡単な方法はありますか?
参考までに、現在の WiX ファイルは以下のとおりです。
wix - WiX を使用してイベント ログ ソースを作成する方法
カスタム イベント ログ ソースを使用する Web サイト用のインストーラーを作成しています。WiX ベースのインストーラーが、インストール中にそのイベント ログ ソースを作成することを希望します。
WiX フレームワークを使用してこれを行う最善の方法を知っている人はいますか?
wix - .msi ファイル自体を (おそらくカスタム アクションを介して) インストールできますか?
インストール プロセスで、含まれているファイル/コンポーネントと共にそれ自体を TargetDir に展開する MSI を構築したいと考えています。
そのため、MyApp.msi のファイル テーブルには、MyApp.exe と MyAppBootstrapperEmpty.exe (リソースなし) が含まれています。
ユーザーは MyAppBootstrapperPackaged.exe を起動します (MyApp.msi をリソースとして含み、インターネットのどこかから、または電子メールなどから取得します)。MyAppBootStrapperPackaged.exe は、MyApp.msi を一時フォルダーに抽出し、msiexec.exe を介して実行します。
msiexec.exe プロセスが完了したら、MyApp.msi、MyBootstrapperEmpty.exe (および %ProgramFiles%\MyApp フォルダー内の MyApp.exe が必要です。これにより、MyApp.exe は実行時に MyApp.msi に確実にアクセスできるようになります (以下を作成するため)。言及されたパッケージ内容)。
MyAppBootstrapper*.exe は、MyApp.msi を %ProgramFiles%\MyApp フォルダーにコピーしようとする可能性がありますが、そのためには昇格が必要であり、Windows インストーラーのアンインストール プロセス ([プログラムの追加と削除] などから) による削除は許可されません。保存する必要があります。
明らかに(明らかだと思います-間違っていますか?)メディア/ CAB(鶏と卵のシナリオ)にファイルとしてMSIを含めることはできないため、インストール前にカスタムアクションを介して実行する必要があると思います元の MSI を MSI DB のメディア/CAB に追加し、その場でファイル テーブルに適切なエントリを追加します。これを行うことができますか?
コンテンツ ファイルがアプリと一緒にのみ配布されるコンテンツ配布モデルを考えてみてください。コンテンツは、実行時にアプリを介してエンド ユーザーによって生成され、アプリとコンテンツの両方を含む配布可能な EXE にパッケージ化されます。
MyApp のインストーラーは MSI のままである必要がありますが、Bootstrapper EXE によって実行される場合があります。インストールされた MyApp.exe は、MyApp.msi と EXE の両方にアクセスできる必要があります。EXE は、MSI によってインストールされる基本 (空の) MyAppBootstrapper.exe からアプリによって実行時に「アセンブル」されます。エンドユーザー。EXE のリソース MSI は、ランタイム パッケージを実行するアプリのインストールに使用されたものと同じである必要があります。
WIX は MyApp と一緒にインストールする必要はありません。
実行時/パッケージング時にネットワークに依存することはありません (つまり、Web サービスを介してパッケージ化を行うことはできません。ローカルで行う必要があります)。
私はカスタム アクション (マネージドおよびアンマネージド、DTF 経由など) に精通しています (そして使用しています)。
installation - WiXインストーラーのアップグレードを実装する方法は?
職場では、インストールパッケージの構築にWiXを使用しています。製品Xをインストールすると、そのマシンでその製品の以前のバージョンがアンインストールされるようにする必要があります。
メジャーアップグレードについてインターネット上のいくつかの場所で読んだことがありますが、それを機能させることができませんでした。以前のバージョンのアンインストール機能をWiXに追加するために必要な正確な手順を誰かが指定できますか?
deployment - WiX 3.0を使用してレジストリキーと値を展開するにはどうすればよいですか?
レジストリキーを作成したい場合
HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ Eventlog \ Application \ MyApp
文字列値を使用
EventMessageFile:C:\ Path \ To \ File.dll
WiX 3.0 WXSファイルでこれを定義するにはどうすればよいですか?XMLがどのように見えるかの例は非常に高く評価されています。
installation - WiX でカスタム アクションを定義するにはどうすればよいですか?
WiXインストーラーと、インストーラーのプロパティを使用する単一のカスタム アクション (および元に戻すとロールバック) があります。カスタム アクションは、すべてのファイルがハード ディスクに配置された後に実行する必要があります。これには、WXS ファイルに 16 個のエントリが必要なようです。次のように、ルート内で 8 を指定します。
内の 8 つは次のInstallExecuteSequence
ようになります。
より良い方法はありますか?
installation - ファイルの種類/拡張子をWiXインストーラーに登録するにはどうすればよいですか?
この質問に対する明確な答えは、WiXドキュメント(または、さらに言えばGoogle)では見つかりませんでした。もちろん、HKCRで適切なレジストリキーを作成することもできますが、それは私を汚く感じさせ、これが標準的なタスクであり、優れたデフォルトのソリューションを持つはずです。
ボーナスポイントについては、「安全」にする方法を知りたいです。つまり、ファイルタイプの既存の登録を上書きせず、インストール中に登録されて変更されていない場合にのみ、アンインストール時に登録を削除します。
wix - 組み込み UI を使用して組み込み MSI パッケージのチェーンをそれぞれインストールする - 共通の進行状況バーを表示する
Windows Installer 4.5 の新機能と WiX を使用してMSIパッケージを生成しています。
トランザクションとして他の MSI パッケージのコレクションをインストールするために、MSI チェーン インストールを作成しました。各パッケージは新しい組み込み UIオプションを使用しているため、UI をWPFにすることができます。ここまではすべて正常に動作します。
目標の 1 つを除いて、すべてのインストールに共通の進行状況バーを表示することです。現時点では、チェーン インストーラーにプログレス バーがありますが、これは他のパッケージが実行を開始する前に 100% に達します。
Fun with MsiEmbeddedChainerという投稿を読んだことがあります。しかし、私はそれを機能させることができません。もう少し詳しい説明と、いくつかのコード サンプルが欲しいです。
wix - COM サーバーを WiX に登録する
WiX を使用して COM サーバーを登録し、Windows インストーラー パッケージを作成するための最良のケースのソリューションを決定しようとしており、苦労しています。
この投稿Deployment Engineering Archive: HOWTO: Use Regsvr32.exe with WIXでは、exe カスタム アクションを通じて regsvr32 の使用を取り締まるための「セットアップ ポリシー」に対する公開要求があります。regsvr32
ユーザーではなくシステムに登録するため、使用することの悪さを知ってOleSelfRegister
いますが、Microsoftサポート速報から問題が発生する可能性があることも思い出します(申し訳ありませんが、リンクが見つかりません)-そして、regsvr32
.
何かアドバイス?