大量のクラスを含むVB6EXEプロジェクトがあります。すべてがEXEにコンパイルされ、COMDLLはビルドされません。
一部のクラスは、IDataProcessingインターフェイスを実装しています。そのインターフェイスを実装するクラスをプログラムで決定するにはどうすればよいですか?
大量のクラスを含むVB6EXEプロジェクトがあります。すべてがEXEにコンパイルされ、COMDLLはビルドされません。
一部のクラスは、IDataProcessingインターフェイスを実装しています。そのインターフェイスを実装するクラスをプログラムで決定するにはどうすればよいですか?
クラスまたはインターフェイスの両方にアクセスできる場合は、TypeOf SomeClassIsIDataProcessingを使用できます。
それとも、すべてのクラスを繰り返し処理して、そのインターフェイスを実装しているクラスを確認したいだけですか?私が知っているEXEのクラスでそれを行う方法はありません。
MSDNから:
反射
Visual Basic 6.0では、リフレクションはサポートされていません。
Visual Basic 2005では、.NET FrameworkクラスライブラリSystem.Reflection名前空間のクラスを使用して、実行時にクラス、インターフェイス、値型などの型に関する情報を取得し、それらを呼び出してアクセスする型インスタンスを作成できます。
詳細については、「VisualStudioのリフレクションネームスペース」を参照してください。
あなたはとにかくここを見ることができます: