1

最近、クライアントで .dll 地獄の問題がいくつか発生しているため、必要な .dll と .ocx の SxS インストールが適切かどうか疑問に思っていました。私はそれについて読み、マニフェストを介して依存関係の少なくとも一部が提供されたときにアプリケーションの展開に成功しましたが、それはまだ推奨される展開方法ですか、それともここ数年の流行であり、現在は徐々に放棄されていますか?

4

2 に答える 2

5

なぜそれが流行になるのかわかりません。VB6 での懸念は、VB6 SP6 でサポートが改善され、XP SP2 でより完全な実装が提供されたにもかかわらず、VB6 を直接サポートするためのツールの更新がなかったことです。

ここでは常にこれを使用していますが、特定のサード パーティ コントロールが適切に記述されておらず、動作しないことがわかっています。たとえば、多くの vbAccelerator のものは、そのような方法で「壊れている」ようです。

すべてを MSI パッケージにまとめたとしても、現在、reg-free COM を使用して展開していないのはまれなケースです。他の製品の貧弱なインストーラー (多くの DLL Hell の原因) から隔離されていることは大きな利点であり、Windows はシステム コンポーネントの観点から自己防御について改善されており、それ自体が大いに役立っています。

秘訣は、優れたツール サポートを見つけることです。私は、SDK ツールを介して Microsoft の大ざっぱなサポートを適用することに忍耐力を持ったことはありませんが、他の人は忍耐力を持っていると思います。この種のものには、少なくとも 1 つの商用製品があります。社内で開発した独自のツールを使用しています。

流行?私たちはそれを競争上の優位性と考えています。VB6 での移植可能なソフトウェアの作成も容易になります。ドイツの情報源から見たランタイム ライブラリのロードおよびハッキング ツールキットの一部とは異なり、プログラムに面倒なコーディングを追加する必要もありません。普通の古い VB6 プログラムは正常に動作します。

それが可能にするもう 1 つのことは、ユーザーごとの展開であり、昇格権限のないユーザーのためにインストールする MSI パッケージを簡単に作成できます。私たちはステルスウェアの開発を主な目的としているわけではありませんが、お客様は組織内で高い壁に直面することがあります。レジストリや保護されたファイルシステムの領域には触れていないため、管理者からの否定的なフィードバックはほとんどありません。Windows 7 ではこれが強化されました。

Windows 7 でのユーザーごとまたはマシンごとのインストール コンテキスト用の単一パッケージの作成

単一パッケージの機能は利用できませんが、同じ手法が Vista でも機能します。分離されたアプリケーションを構築すると、プロセスがさらに簡単になります。

もちろん、SxS は reg-free COM および分離よりもはるかに多くのことを意味しますが、VB6 の用語では、おそらくそれがあなたが話していたことです。DotNet が使用し、OS が使用します。なぜそれが「流行」のように見えるのか、私にはわかりません。おそらく多くの人は、ツールへの不満、VB6 から別のものへの移行、または現在の経済が非常に競争的であるため、この件について沈黙を守っています。

于 2011-02-20T19:36:14.480 に答える
0

過去に SxS を試したことがありますが、アプリケーションが実行されるはずの Windows XP マシンの特定の割合で問題が発生したため、使用をやめました。

于 2011-02-19T15:06:52.053 に答える