これは、FireBreath ユーザーから多く寄せられる質問です。そのため、プロジェクトの Google グループよりも見つけやすいフォーラムで、より詳細に回答する時期が来ていると思われます。
まず、regsvr32 の問題を解決するために、FireBreath はすべてのブラウザで「自己登録」をサポートしています。つまり、regsvr32 を呼び出すと、DReJ によってリンクされたメソッドを使用して、IE だけでなく NPAPI ブラウザーのレジストリ キーもインストールされます (その情報については +1、ところで、感謝します。多くの人はそれを見つける場所を知りません)。
ただし、自己登録 DLL は、インストーラーの世界と Microsoft によって強く推奨されていません。これには多くの理由があります。あなたの投稿では、他のインストール オプションをうまくまとめています。IE では .cab を、firefox では .XPI を使用できますが、もちろん他のブラウザーでは役に立ちません。
FireBreath チーム (私が率いる) が推奨する方法は、すべてのブラウザーで MSI インストーラーを使用することです。個人的には、インストール時にブラウザーごとに動作が異なるのは好きではないので、javascript を使用してプラグインの存在 (または不在) を検出し、MSI インストーラーをダウンロードして実行するようにユーザーに促します。
FireBreath には、WiX を使用して MSI インストーラーをビルドするための「組み込み」サポートがあります。マシンに WiX 3.0 以降をインストールして prep スクリプトを再実行すると、基本的な MSI をビルドする _WiXInstaller プロジェクトが作成され、Visual Studio ビルド プロセスの一部としてすべてのブラウザーにプラグインがインストールされます。ホーム ディレクトリに残る .wxs テンプレートを変更してカスタマイズできます。
詳細については、FireBreath wiki を参照してください:
http://www.firebreath.org/display/documentation/WiX+Installer+Help
http://www.firebreath.org/display/~me@iaincollins.com/Potential+インストーラー+改善
IE 用の .cab インストーラーを使用することに本当に満足している場合 (私はそれらに問題がありましたが、いくつかはうまくいったようです)、MSI ファイルを CAB 内に配布し、CAB が起動したときに実行することができます。インストールされています。これの利点は、MSI をインストールすると、IE、Firefox、Safari、Chrome、Opera (およびそれらのブラウザーが使用する同じプラグイン技術と互換性のある他のブラウザー) のすべてがインストールされることです。
簡単に言うと、MSI が (regsvr32 のような DllRegisterServer を呼び出すものを使用するのではなく) プラグインをインストールするための理想的なソリューションである理由は、MSI がトランザクション ベースであるためです。つまり、アップグレード時に MSI システムがすべてをクリーンにアンインストールするため、別の場所にある 10 の異なる古いインストーラー バージョンのアンインストールのサポートについて心配する必要はありません。
それが役立つことを願っています!