TypeLibFuncAttribute 類別

定義

含有原來針對這個方法從 COM 型別程式庫匯入的 FUNCFLAGS

public ref class TypeLibFuncAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)]
public sealed class TypeLibFuncAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class TypeLibFuncAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)>]
type TypeLibFuncAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Method, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type TypeLibFuncAttribute = class
    inherit Attribute
Public NotInheritable Class TypeLibFuncAttribute
Inherits Attribute
繼承
TypeLibFuncAttribute
屬性

範例

下列範例示範如何取得 TypeLibFuncAttribute 方法的值。

using namespace System;
using namespace System::Reflection;
using namespace System::Runtime::InteropServices;

ref class ClassC
{
private:
   static bool IsHiddenMethod( MethodInfo^ mi )
   {
      array<Object^>^MethodAttributes = mi->GetCustomAttributes( TypeLibFuncAttribute::typeid, true );
      if ( MethodAttributes->Length > 0 )
      {
         TypeLibFuncAttribute^ tlf = dynamic_cast<TypeLibFuncAttribute^>(MethodAttributes[ 0 ]);
         TypeLibFuncFlags flags = tlf->Value;
         return (flags & TypeLibFuncFlags::FHidden) != (TypeLibFuncFlags)0;
      }

      return false;
   }
};

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;
        }
    }
}
Imports System.Reflection
Imports System.Runtime.InteropServices

Module C
    Public Function IsHiddenMethod(ByVal mi As MethodInfo) As Boolean
        Dim MethodAttributes As Object() = mi.GetCustomAttributes(GetType(TypeLibFuncAttribute), True)

        If MethodAttributes.Length > 0 Then
            Dim tlf As TypeLibFuncAttribute = MethodAttributes(0)
            Dim flags As TypeLibFuncFlags = tlf.Value
            Return (flags & TypeLibFuncFlags.FHidden) > 0
        End If
        Return False
    End Function
End Module

備註

Tlbimp.exe (型別程式庫匯入工具) 將此屬性套用至方法。

匯入型別程式庫時,這個屬性會套用,且不應該變更。 只有在方法 FUNCFLAGS 評估為非零時,才會套用它。 屬性的設計目的是要供需要知道原始 FUNCFLAGS 設定方式的工具使用。 Common Language Runtime 不會使用這個屬性。

建構函式

TypeLibFuncAttribute(Int16)

使用指定的 TypeLibFuncFlags 值,初始化 TypeLibFuncAttribute 類別的新執行個體。

TypeLibFuncAttribute(TypeLibFuncFlags)

使用指定的 TypeLibFuncFlags 值,初始化 TypeLibFuncAttribute 類別的新執行個體。

屬性

TypeId

在衍生類別中實作時,取得這個 Attribute 的唯一識別碼。

(繼承來源 Attribute)
Value

取得這個方法的 TypeLibFuncFlags 值。

方法

Equals(Object)

傳回值,這個值指出此執行個體是否與指定的物件相等。

(繼承來源 Attribute)
GetHashCode()

傳回這個執行個體的雜湊碼。

(繼承來源 Attribute)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
IsDefaultAttribute()

在衍生類別中覆寫時,表示這個執行個體的值是衍生類別的預設值。

(繼承來源 Attribute)
Match(Object)

在衍生類別中覆寫時,會傳回值,表示這個執行個體是否等於指定物件。

(繼承來源 Attribute)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
ToString()

傳回代表目前物件的字串。

(繼承來源 Object)

明確介面實作

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

將一組名稱對應至一組對應的分派識別項 (Dispatch Identifier)。

(繼承來源 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

擷取物件的類型資訊,可以用來取得介面的類型資訊。

(繼承來源 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

擷取物件提供的類型資訊介面數目 (0 或 1)。

(繼承來源 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

提供物件所公開的屬性和方法的存取權。

(繼承來源 Attribute)

適用於

另請參閱