Converts an ITypeInfo into a managed Type object.
[Visual Basic] Public Shared Function GetTypeForITypeInfo( _ ByVal piTypeInfo As IntPtr _ ) As Type [C#] public static Type GetTypeForITypeInfo( IntPtr piTypeInfo ); [C++] public: static Type* GetTypeForITypeInfo( IntPtr piTypeInfo ); [JScript] public static function GetTypeForITypeInfo( piTypeInfo : IntPtr ) : Type;
- The ITypeInfo interface to marshal.
A managed Type that represents the unmanaged ITypeInfo.
GetTypeForITypeInfo returns a System.Type instance that is based on the original type. You can apply the System.Runtime.InteropServices.MarshalAsAttribute to replace standard interop marshaling behavior with this custom marshaler. The Type Library Importer (Tlbimp.exe) uses the custom marshaler to translate ITypeInfo parameters to Type parameters. However, if you obtain an ITypeInfo interface by some means other than Tlbimp.exe, you can use GetTypeForITypeInfo to manually perform the same translation. For additional information about ITypeInfo, see the MSDN Library.
Note This method uses SecurityAction.LinkDemand to prevent it from being called from untrusted code; only the immediate caller is required to have SecurityPermissionAttribute.UnmanagedCode permission. If your code can be called from partially trusted code, do not pass user input to Marshal class methods without validation. For important limitations on using the LinkDemand member, see Demand vs. LinkDemand.
Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family
.NET Framework Security:
- SecurityPermission for operating with unmanaged code. Associated enumeration: SecurityPermissionFlag.UnmanagedCode.