2

Visual Basic 6 を使用しています。

私のプロジェクトにはいくつかのコンポーネント参照があります。コンポーネントは、「regsvr32」を使用して Windows に登録されます。.ocxということで、インストールディレクトリからComponentsに追加しました。

としましょうC:\Program Files\Install Dir\。しかし、(.oca)コントロールの参照を見ると、VB は自動的にパスを取得し、ファイルがコピーされている C:\Program Files\Microsoft Visual Studio\VB98ことがわかります。.oca

しかし、私はインストール ディレクトリからのみ参照を使用したいと考えています。削除または更新しようとしましたが、Can't remove control or reference;In use

私はすでにエディタで編集しようとしましたが、参照パスがデフォルトでさえ.vbp表示されません.ocaC:\Program Files\Microsoft Visual Studio\VB98

4

1 に答える 1

3

ActiveX DLL および OCXは、設計上、共有ライブラリとしてインストールされます。このためC:\Program Files\Install Dir\、他のコードが使用してはならないアプリケーションの一部であるという意味で本当にプライベートでない限り、それらを自分のようなプライベート フォルダーにインストールすることはほとんどありません。

Microsoft、サードパーティ、または自分で開発したものなど、より一般的な「ユーティリティ」ライブラリは、通常、設計時のライセンス (ライセンスが付与されている場合) とより関連性の高い .DEP ファイルの両方を含めることにより、開発者モードでインストールされます。このような .DEP ファイルに含まれる情報の一部は、ライブラリがインストールされる場所です。 これは System32 である場合もあれば、Common Files の下のフォルダーである場合もあります。

DLL または OCX のプライベート コピーが本当に必要な場合は、そのためのメカニズムがあります。これらは分離アセンブリと呼ばれ、以前の問題のある Win2K の .local メカニズムを置き換えました。

これらの .OCA ファイルはまったく別のものであり、それらを参照したりデプロイしたりしないでください。

しかし、あなたが本当に求めているものを伝えるのは難しいです。次のようなメッセージ:

コントロールまたは参照を削除できません。使用中です。

..残りの質問とはまったく関係のない設計時の問題です。

あなたが何をしようとしているのかわからない。他のアプリケーション専用のライブラリを再利用しようとしているようです。

于 2012-08-14T00:50:38.530 に答える