マシン上のすべてのIDispatchサポートオブジェクトを列挙したいと思います。現時点では、クラスIDまたはプログラムIDを知る必要がありますが、マシンを検査するために、IDispatchを実装するすべてのオブジェクトを列挙できるかどうかを知りたいと思います。
これも可能ですか?
どんな助けでも大歓迎です:)
それは非常に奇妙な要求です。摩擦は「すべて」の規定にあります。HKCR \ TypelibキーとLoadTypeLib()による単純な列挙では不十分であり、タイプライブラリを公開するためにCOMサーバーは必要ありません。実際には、IDispatchのコクラスとQueryInterfaceをCoCreateInstance()する必要があります。これは遅いだけでなく、危険でもあります。
なぜこのようなことを実際に考えているのかを説明すると、より良い答えが得られるかもしれません。引数が何を意味するのか、または副作用が何であるのかについて何らかの考えを持たずにIDispatch :: Invoke()を呼び出すことは、災害のレシピです。「ReformatDrive」のようなメソッド名には近づかないでください。