2012-05-08 23 views
0

VB6プロジェクトに同僚を含めるために.Netを.Netで作成しました。多くのヘッドスクラッチの後、最終的に.dllがVB6プロジェクトから参照され、オブジェクトのインスタンスを作成することができました。別の.dllを参照する.dllを作成します。

私の.dllは別の.dll(第三者)を参照しています。私は.exeファイルを生成するときに、それを前提条件にするのではなく、参照された.dllをincludeに選択することができます。ただし、.dllファイルを作成するときは、同じ機能は使用できません。

彼のVB6では、サードパーティの.dllにアクセスできないと述べています。

サードパーティの.dllを自分の.dllに含めるにはどうしたらいいですか?それとも、私の同僚がサードパーティの.dllだけでなく、私のことを参照するのが賢明でしょうか?

ありがとうございます。

答えて

1

.NET DLLをVB6から参照するには、適切な.NET Frameworkバージョンから "regasm"コマンドを実行する必要があります。また、 "/ tlb"スイッチを使用してタイプライブラリ(.tlbファイル)を出力することもできます。

tlbファイルを作成したら、VB6 IDEからProject-> Referencesを選択し、参照をクリックしてtlbを選択するだけです。 .NETライブラリ内のクラスの初期バインディングインスタンス化を使用できるようになりました。

.NET DLLは別のDLLを使用するため、.NET DLLを参照するEXEにアクセスできるようにする必要があります。これは、サードパーティのDLLをEXEの起動元と同じパスに展開することによって実行されます。また、サードパーティのDLLが.NETであり、かつ厳密に名前が付けられている場合は、グローバルアセンブリキャッシュ(GAC)に追加することもできます。

3

参照されたDLLを別のDLLに(確実に)埋め込むことはできません。彼らは、著者が推薦するように、前提条件と登録された/設定された両方でターゲットマシンにコピーする必要があります。

+0

私はそれを恐れていました。ありがとう! – PaulG