Export (0) Print
Expand All
This topic has not yet been rated - Rate this topic

TypeLibFuncAttribute Class

Contains the FUNCFLAGS that were originally imported for this method from the COM type library.

Namespace: System.Runtime.InteropServices
Assembly: mscorlib (in mscorlib.dll)

[ComVisibleAttribute(true)] 
[AttributeUsageAttribute(AttributeTargets.Method, Inherited=false)] 
public sealed class TypeLibFuncAttribute : Attribute
/** @attribute ComVisibleAttribute(true) */ 
/** @attribute AttributeUsageAttribute(AttributeTargets.Method, Inherited=false) */ 
public final class TypeLibFuncAttribute extends Attribute
ComVisibleAttribute(true) 
AttributeUsageAttribute(AttributeTargets.Method, Inherited=false) 
public final class TypeLibFuncAttribute extends Attribute

The Type Library Importer (Tlbimp.exe) applies this attribute to methods.

This attribute is applied when a type library is imported and should never be changed. It is only applied when the method's FUNCFLAGS evaluate to non zero. The attribute is designed to be used by tools that need to know how the original FUNCFLAGS were set. The common language runtime does not use this attribute.

The following example demonstrates how to get the TypeLibFuncAttribute value of a method.


using System;
using System.Reflection;
using System.Runtime.InteropServices;

namespace C
{
	class ClassC	
	{
		public static bool IsHiddenMethod( MethodInfo mi )
		{
			object[] MethodAttributes = mi.GetCustomAttributes( typeof( TypeLibFuncAttribute ), true);
		
			if( MethodAttributes.Length > 0 )
			{
				TypeLibFuncAttribute tlf = ( TypeLibFuncAttribute )MethodAttributes[0];
				TypeLibFuncFlags  flags = tlf.Value;
				return ( flags & TypeLibFuncFlags.FHidden ) != 0; 
			}
			return false;
		}
	}
}

import System.*;
import System.Reflection.*;
import System.Runtime.InteropServices.*;

class ClassC
{
    public static boolean IsHiddenMethod(MethodInfo mi)
    {
        Object methodAttributes[] 
            = mi.GetCustomAttributes(TypeLibFuncAttribute.class.ToType(), true);

        if (methodAttributes.length > 0) {
            TypeLibFuncAttribute tlf 
                = (TypeLibFuncAttribute)(methodAttributes.get_Item(0));
            TypeLibFuncFlags flags = tlf.get_Value();

            return (int)(flags & TypeLibFuncFlags.FHidden) != 0;
        }
        return false;
    } //IsHiddenMethod
} //ClassC

System.Object
   System.Attribute
    System.Runtime.InteropServices.TypeLibFuncAttribute
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0
Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.