IDynamicMetaObjectProviderを使用してCOMオブジェクトをイントロスペクションするにはどうすればよいですか?具体的には、任意のCOMオブジェクトを指定すると、キーがプロパティ名で、ValueがCOMオブジェクトのプロパティの文字列値であるDictionaryを返したい(プロパティ値が文字列でない場合はスキップする) 。System.Dynamicを使用してCOMオブジェクトをイントロスペクションする
実行時にこのようにプロパティ名とその値を取得するにはどうすればよいですか?
dyn.GetType()。GetProperties()などのようにReflectionを使用してください。 –
@Hansそれは動作していないようで、ComObjectの静的プロパティを返します。 –
私のマシンでうまく動作しました。参照がオブジェクトではなく動的な型であることを確認してください。そして、COMサーバーはIDispatchを実装します。 –