Suppose you have a method that takes these parameters:
void Method( Foo f, Foo[] f_array ) {}
If you use Reflection to look at the parameter types, you'll see that there are
actually TWO different types reported. You can see the values by looking at
ParameterInfo.ParameterType.TypeHandle.Value.
After looking at the Rotor sources, I can see that TypeHandle.Value maps to a
TypeHandle runtime structure. This is the same value that you will get from the
Profiling API during ClassLoadStarted/Finished events. I'm working a lot with the
profiling API these days.
Unfortunately, the profiling API will only report the ClassID for the Foo type, not
the Foo[] "pseudo-type". For a variety of reasons, I'd really like to be able to get
the Foo[] "pseudo-type" TypeHandle from the unmanaged code space. Is there a
reasonable way of getting at the TypeHandle values from UNMANAGED code?
Thanks
-John
http://www.iunknown.com