問題タブ [msp]
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.
windows - MSI パッチ (.msp) を手動で作成しますか?
私たちのチームは最近、問題のある特定のキーを変更するために、マイナーなレジストリ修正をユーザーにプッシュすることを検討しています。レジストリ内の 1 つのキー/値を更新するだけで十分です。
そのため、現時点では、Wix を使用して製品の .msi インストーラーを作成しています。.msp パッチ ファイルの生成に対する Wix のサポートを調べたところ、.msp を作成する唯一の方法は、次のようなやや複雑な複数ステップのプロセスであると思われます。
- 元の MSI のコピーを取得し、修正された MSI の新しいコピーをコンパイルします。
- 両方のインストーラーを指す新しい Wix ファイルを作成します
- Candle を使用して Wix ファイルを .wixobj にコンパイルし、.psp にします。
- 元のインストーラーと .psp の前後のスナップショットで Torch/Pyro を実行するか、代わりに MsiMsp.exe を使用します。
ここで私の質問は、レジストリの変更を Wix ファイルに単純に記述し、ステップ 1 と 4 を使用せずに直接 .msp にコンパイルできないかということです。
wix - MSI パッチ - ファイルの作成日
msi インストールにパッチを適用したい。ベースライン msi と現在の msi で同じファイルのタイム スタンプが異なる場合、それは変更されたファイルとして検出され、その結果、結果の msp ファイルに含まれますか? はいの場合、これを回避する方法はありますか?
具体的なシナリオは次のとおりです。 ベースライン msi に dll A と B があり、日付 X にビルドされているとします。ビルド プロセス中にすべての dll が生成されます。新しい msi には、変更された dll A と同じ dll B があり、日付 Y にビルドされます。dll A と B もビルドされ、タイムスタンプ Y になります。B は差分 msp ファイルに含まれますか? (wixを使っています)
windows-installer - MSP は更新されたすべてのファイルをインストールしない
2 つの MSI パッケージがある場合:
パッケージ A) 2.0.1234 (initial_product.msi) パッケージ B) 2.0.2300 (updated_product.msi)
この 2 つから MSP を生成して 2.0.1234 を 2.0.2300 にアップグレードするパッチを installshield で作成できます。奇妙なのは、updated_product.msi の新しいファイルがインストールされていないことです。ただし、更新中のファイルは更新されます。新しいファイルは AlwaysInstal 機能の下にあります。
新しいバージョンの新しいファイルが見つからないため、基本的に非標準のインストールになりますが、古いファイルは新しいバージョンの DLL で更新されます。
それらがインストールされない原因は何ですか? MSP はデフォルトの REINSTALLMODE=omus REINSTALL=ALL で実行されています
ありがとう
windows-installer - MsiMsp.exe を使用したパッチのビルド -- ターゲットの MSI が元の MSI と異なる可能性はありますか?
すでに配信されている製品の msp パッチを作成しています。製品には多数のコンポーネント/ファイルがあります。
元のターゲット MSI とアップグレード MSI (orca を介して手動で変更) からパッチを作成しています。ここまでは順調ですね。
パッチのビルドと適用には多くのファイルが必要なので、両方の MSI から変更されていないファイルをすべて削除してスピードアップすることを考えています。ターゲット MSI にいくつかの変更を加えることができることはわかっていますが、それでも問題なく適用されますが、ファイル/コンポーネント/ディレクトリへの変更について疑問に思っています。誰か教えてくれませんか
- そもそもファイルの削除が機能する場合、および
- 追加のパッチ (ベースラインとパッチが適用されたバージョンの両方) で問題が発生する場合は?
これまでにほぼすべての穴にぶつかったので、今回は最初に質問しようと思いました。そして、私はまだ Windows インストーラーを完全に把握していないことを率直に認めます。
ありがとう!
wix - MSP インストール - エラー 2920: ファイルのソース ディレクトリが指定されていません
ファイルを含む基本インストールがあり、その後にそのファイルを更新する2つのパッチがあります。すでに 1 つのパッチがデプロイされていますが、パッチ宣言で要素にSequenceStart を設定する必要があることに気付いたのが遅すぎました。<Family>
Orca のパッチを見ると、新しいファイルのシーケンスは 2 で、既存のファイルと同じです。
これに適用したい別のパッチがありますが、新しい SequenceStart を正しく設定しても、次のメッセージで失敗します。
最初のパッチの無効なシーケンス番号がここで混乱しているように感じます。エラーは Windows Server 2003 でのみ発生しますが、2 番目のパッチのインストールは Server 2008 で成功します。
私はここで立ち往生していますか?新規インストールを行う唯一の方法はありますか? または、エラーの原因となっている何かが他にある可能性がありますか?
(編集)正しい中間シーケンス番号でもテストしましたが、同じエラーでまだ失敗しています。だから、それは別のものでなければなりません。誰にも手がかりはありますか?
(edit2) Windows Installer 3.1 を使用するとエラーがスローされますが、Windows Installer 4.5 を使用するとすべてが機能します。
asp.net - MSI と MSP を使用することの長所と短所は何ですか?
MSI と MSP を展開に使用する場合の長所と短所は何ですか。MSI と MSP を使用してソフトウェアの展開を自動化することを考えていました。懸念があるかどうかを理解したかったのです。また、パッチの展開に MSP を使用することの実現可能性
wix - Pyro とファイルのシーケンス
パッチを使用して新しいファイルを追加すると、ファイル シーケンス テーブルが台無しになり、同時にパッチのサイズが製品のインストールのサイズと同じになります。この動作を克服するために PatchGroup 要素を使用していますが、パッチによって追加された新しいファイルの数が増えると、PatchGroup で最後に使用された数を追跡するのが難しくなります。Rob Mensching によるこの投稿を見つけました。
私が正しく理解している場合、pyro は新しいファイルをファイル シーケンスの最後に自動的に追加するはずです。何か間違ったことをしているのですか、それとも Pyro が期待どおりに動作していませんか?
wix - パッチによる msi インストールのアンインストール
アンインストール可能な小さな更新パッチが 1 つ適用された製品のインストールがあります。最初にパッチをアンインストールしてから製品をインストールした場合、またはパッチがまだインストールされている間に製品のアンインストールを選択した場合に違いはありますか? 製品とパッチのインストールは、WiX ツールを使用して作成されます。
windows-installer - 管理者インストールでMSI/MSPを使用する際の複数のショートカット
製品のインストールとパッチ適用にMSI/MSPを使用しようとすると、奇妙な問題が発生します。
その2ステップのプロセス:
MSI / MSPを使用して、製品のインストールプロセスに取り組んでいます。この場合、ユーザーはシステム管理者に、ネットワーク経由でGPOを使用して製品MSIをインストールするように依頼します。
結果:製品はユーザーマシンの再起動時に正常にインストールされます。
ユーザーはシステム管理者に製品のアップグレードを要求し、システム管理者はMSPを使用して、ネットワーク経由でGPOを使用してネットワークインストールにパッチを適用します。
結果:ユーザーのマシンを再起動すると、製品に1つの問題が正常にパッチされます。
問題:製品に対して複数のショートカットが作成されます。当社の製品には、バージョン番号と製品名(abc 1.0、abc 2.0)があります。したがって、MSPが適用されるたびに、デスクトップとスタートメニューに新しいショートカットが作成されます。
誰かが既存のショートカットを削除して、ユーザーのデスクトップとスタートメニューに新しいショートカットを表示する方法を教えてもらえますか?
memory - R0 および R1 レジスタはメモリ マップのどこにありますか?
メモリ マップ内のプログラム カウンタ (R0) とスタック ポインタ (R1) の位置について非常に混乱しています。それらは CPU 内にあると思われるため、これらのレジスタを示すメモリ マップ内の位置はありません。しかし、私の友人それらはメモリマップの一番下にある特殊機能レジスタ(SFR)にあると主張しています.どれが正しい答えですか?