28

私たちのインストーラーは Inno Setup で書かれており、実際には非常に満足しています。それでも一部の顧客は、Active Directory 経由でより簡単に配布できる MSI インストーラーを求め続けています。/LOADINFInno Setup の-mechanism を独自のオプションで拡張することにより、インストーラーが自動化された無人インストールをうまく処理できるようにするために、すでにある程度の努力をしています。

MSI を求める顧客を満足させるために、WIX を使用して作成された可能性のある MSI 内に通常のインストーラーを単純にラップすることを考えていました。問題は、現在のインストーラーが提供する高度な構成可能性を維持できるかどうかです。無人/大量インストールのシナリオで外部 MSI を介して Inno Setup インストーラーのオプションを公開するにはどうすればよいですか?

MSI の作成と WIX を自分で実際に掘り下げるまでには至っていないことに注意してください。今のところ、私が興味を持っているのは、自分が何について話しているのかを知っている人々が、これがそもそも私たちのエネルギーを投資するための実行可能で賢明なアプローチであると考えているかどうかだけです...

[編集:] 最初は、一時的な抽出と実行のアプローチでできると思っていました。つまり、MSI は単に Inno インストーラーをターゲット PC に配信し、そこで/VERYSILENT-mode で実行するための容器として機能します。しかし、MSI を要求するお客様は、中央の場所からインストールをアンインストールしたり、インストールを変更したりできることも望んでいると思いますが、そのシナリオではそれは不可能だと思います。

PS: ここにも MSI 用の WISE の古いコピーがありますが、実際にはその経験が、最初から代わりに Inno を使い始めた理由です...

4

10 に答える 10

18

いいえ、顧客が「暗黙的に」求めている機能を維持しながら、それを行う方法はありません。MSIで実行できる唯一の「ラッピング」は、インストール時にそれを抽出し、抽出先の一時的な場所からInnoSetupインストーラーを起動することです。MSIは、根本的に異なる作業方法です。InnoSetup(およびNSISおよび他のほとんどのインストーラー)は、コード中心のアプローチを採用しています。つまり、データをインストールするための「プログラム」「ステップ」を実行します。MSIはデータベースであり、「データ中心」のアプローチを採用しています。インストールするファイルを指定し、MSIの「ランタイム」が残りを実行します。これにより、バージョン管理と、何がどこに行くかを正確に制御できます。

つまり、顧客が望むもの(つまり、MSIがADでもたらす展開の容易さ)を提供するには、「適切な」MSIが必要になります。それで頑張ってください、それは私見の大きな痛みです。ただし、MSIとWiXをマスターすると、良い結果が得られます。

于 2008-09-16T11:11:48.097 に答える
13

私はこの問題を何度も経験しました。したがって、この問題に対処するための標準的な方法を作成し、手順を案内するウィザードを作成しました。このツールは以下をサポートします。

  1. exe を MSI でラップします。
  2. アンインストールをサポートします。
  3. [プログラムの追加と削除] に 1 つのプログラムのみを表示します。
  4. MSIEXEC.EXE を使用して MSI パッケージを実行するときに、/SILENT などのコマンド ライン引数を組み込みセットアップに渡すことができます。

http://www.exemsi.comで入手できます(基本バージョンは無料です) 。

私の連絡先フォームを使用して、あなたの考えを教えてください:-)

于 2012-08-22T19:32:55.770 に答える
1

インストール技術を混ぜても意味がありません。

混合している場合は、アンインストールに関する最初の問題が発生します。変更を加えないと、プログラムの 2 つのアンインストーラーが得られます。

「entwickler マガジン」に Windows インストーラーから始まる記事がいくつかあります。

  • Entwickler Magazine (Ausgabe: 03.09/15.04.2009) 記事: MSI-Pakete mit Open-Souce-Software erzeugen Teil 4
  • Entwickler Magazine (Ausgabe: 02.09/12.02.2009) 記事: MSI-Pakete mit Open-Souce-Software erzeugen Teil 3
  • Entwickler Magazine (Ausgabe: 01.09/10.12.2008) 記事: MSI-Pakete mit Open-Souce-Software erzeugen Teil 2
  • Entwickler Magazine (Ausgabe: 06.08/15.10.2008) 記事: MSI-Pakete mit Open-Souce-Software erzeugen

http://entwickler-magazin.de/

Windows インストーラーは、インストール用の唯一のテクノロジである必要があります。その将来性と安定性!

于 2009-08-07T14:10:11.160 に答える
1

MSI から INNOSETUPper を自動的にインストールするラッパー キットを作成するのは非常に簡単です。基本的な機能 (インストール/アンインストール) については、これで十分です。とにかく、ほとんどのセットアップ担当者は修復を実装しません。

  1. INNO セットアップ用の silent.inf スクリプトを作成する (オプション)

  2. を呼び出す install.bat を作成します。

    myinnosetup.exe /silent /NOCANCEL /norestart /Components="xxx"

    /verysilent
    を使用できます /LOADINF="silent.inf" を使用して、silent.inf から設定をロードできます

  3. install.bat を呼び出す MSI セットアップ ファイルを作成します (必要に応じてパラメーターを指定)。

  4. 4 つのファイルすべてを顧客に配信すると、顧客は SMS または ActiveDirectory を使用して Inno setupper を展開でき、誰もが満足します :)

于 2008-10-14T13:21:31.610 に答える
1

Inno Setup を MSI パッケージにラップするのは簡単な作業ではありません。ただし、可能です。これを行うために使用できる無料のツールがたくさんあります。アンインストールとアップグレードもサポートするものを選択する必要があります。

アップグレードとアンインストールをサポートする無料ツールを 1 つだけ見つけました。http://www.exemsi.com/inno-setup-and-msiをチェックしてください

于 2013-02-17T19:36:18.907 に答える
1

あなたの編集に応じて:はい、MSIデータベースはインストーラーの内容について何も知らないため、あなたが説明したことはアップグレード(削除/再インストール以外)とリモート構成を防ぎます。

ただし、多くのインストーラー パッケージは、この方法で MSI の「サポート」を開始しました。たとえば、InstallShield はそうしました。その方法で作成されたインストーラーは MSI の目的には役に立たないため、それが私がそれらをダンプした主な理由です。InstallShield の最近のバージョンの方が優れているかどうかはわかりません。最後に確認したのは 5 年前です。

于 2008-09-16T14:08:45.910 に答える
1

MSI でラップされた Inno Setup を使用すれば、やりたいことをすべて実行できると思いますが、簡単なことではなく、WiX を使用すると、この特定のタスクがより難しくなる可能性があります。要するに、私はそれを本当にお勧めしません。

しかし、もしあなたが本当にしたいのなら...

MSI ファイルは、スクリプト命令が追加された単純なデータベース ファイルであり、多くの場合、実際にインストールしたいものを含む .cab ファイルが埋め込まれています。

Wise を使用する場合は、Windows インストーラーの条件を追加してイベントをより細かく制御 (インストール、修復、変更、アンインストール) できるデフォルト スクリプトを生成し、Inno Setup インストール スクリプトで同等のアクションを呼び出すことができます。一時フォルダにインストールして保持する必要があります。

于 2009-02-03T22:08:48.290 に答える
0

最後のコメントは実行可能で実行可能ですが、MSI に移行することがこれを処理する最善の方法です。

ほとんどすべての大規模な組織が MSI のみを規定していますが、その理由は多数あります。

1) まず導入の容易さ 2) アプリケーションの社交性の方が重要 3) 自己修復

Windows インストーラーを実装していない inno setup などのツールは、Windows インストーラーと同じ方法でアプリケーションの社交性を提供することはできません。

Inno setup は、単一のアプリケーションを展開するように設計されたソフトウェアであることを理解する必要があります。

Windows インストーラーは、社交性、ユーザーのなりすまし、ユーザーの昇格、自己回復、ユーザー プロファイルの修正を処理するための完全なフレームワークです。

この 2 つは、機能的には遠く離れているわけでもありません。Windows インストーラーとの比較という点では、私の心にある inno セットアップは、完全に完全にコースから外れています。

成功するインストーラーを作成できますか? はい 使いやすいですか?はい 良い単一のインストーラーを作成しますか? はい 企業にとって最良の選択ですか?番号

マイクロソフトの「SMS インストーラー」によって開発された最も初期のツールは、10 年前に innosetup でした。インストールの世界では状況が劇的に変化しており、inno のセットアップはその変化のペースに追いついていません。

于 2008-10-24T01:17:28.180 に答える
0

そうすることは、ZIP ファイルを配信し、インストールの最後までに unzip を呼び出すこととほとんど同じです。

このようなアプローチでは、AD と Windows インストーラーは、あたかも適切な MSI インストールを処理しているかのようにだまされますが、そうではないため、最初は裏目に出てしまいます。

この道を行かないでください。

とにかく、WiX は InnoSetup よりも優れたツールセットであるため、学習と移植に費やす時間は、コラボレーションのサポートが向上することで報われます。

于 2008-09-16T12:26:43.813 に答える
0

Silent.inf にカスタム値を入力する必要があります (固定された inno セットアップ設定値ではありません)。LOADINF で許可されているようには見えません。

注: makemsi を使用する場合は、$WrapInstall を使用できるため、バットを含める必要はありません。

于 2009-05-13T14:29:32.940 に答える