アプリケーション間に .dll の階層化されたシステムがあり、最下位レベルには特定の機能を提供するクラスがあります。このクラスのインスタンスは GetClass() 関数を介して受け取ることができ、そのプロパティ (基本的にはコレクション) にアクセスできます。変化するオブジェクトの情報)。
ここで、次の上位レベルの .dll からその情報にアクセスしたいときに、コンパイラが下位レベルの .dll (クラスを定義するもの) を参照していないと文句を言うことに気付きました。これは実際には避けたいと思います。私のアーキテクチャには素晴らしい階層構造があります。
これを回避する方法は?参照された型を再公開できますか? まったく同じ機能が必要な場合、本当に独自のラッパーを作成する必要がありますか? それとも、低レベルの .dll を再度参照する必要がありますか?
DLL 1:
class myClass;
myClass GetMyClass();
DLL 2:
myClass GetMyClass();
EXE:
DLL 1 を参照せずに GetMyClass (DLL 2) を呼び出して結果にアクセスする方法は?