Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu yapı, bir alanın türü hakkında çeşitli bilgi türlerini belirtir.
Sözdizimi
Üyeler
dwKind
dwTYPE_KIND numaralandırmasından birleşimin nasıl yorumlandığını belirleyen bir değer.
type.typeMeta
[Yalnızca C++] ise dwKind TYPE_KIND_METADATAbir METADATA_TYPE yapısı içerir.
type.typePdb
[Yalnızca C++] ise dwKind TYPE_KIND_PDBbir PDB_TYPE yapısı içerir.
type.typeBuilt
[Yalnızca C++] ise dwKind TYPE_KIND_BUILTbir BUILT_TYPE yapısı içerir.
type.unused
Kullanılmayan doldurma.
type
Birleşimin adı.
unionmember
[Yalnızca C# ] Bunu temelinde uygun yapı türüne göre sırala dwKind.
Açıklamalar
Bu yapı, doldurulduğu GetTypeInfo yöntemine geçirilir. Yapının içeriğinin nasıl yorumlandığı alanı temel dwKind alır.
Dekont
[Yalnızca C++] eşitse dwKind TYPE_KIND_BUILT, yapıyı yok ederken temel alınan IDebugField nesnesini serbest TYPE_INFO bırakmak gerekir. Bu işlem çağrılarak typeInfo.type.typeBuilt.pUnderlyingField->Release()yapılır.
[Yalnızca C# ] Aşağıdaki tabloda, her tür türü için üyenin nasıl yorumlur unionmember olduğu gösterilmektedir. Örnek, bunun bir tür için nasıl yapıldığını gösterir.
dwKind |
unionmember olarak yorumlanır |
|---|---|
TYPE_KIND_METADATA |
METADATA_TYPE |
TYPE_KIND_PDB |
PDB_TYPE |
TYPE_KIND_BUILT |
BUILT_TYPE |
Örnek
Bu örnek, C# dilinde yapının üyesini yorumlamayı unionmember TYPE_INFO gösterir. Bu örnekte yalnızca bir türün (TYPE_KIND_METADATA) yorumlanması gösterilmektedir, ancak diğerleri tam olarak aynı şekilde yorumlanır.
using System;
using System.Runtime.Interop.Services;
using Microsoft.VisualStudio.Debugger.Interop;
namespace MyPackage
{
public class MyClass
{
public void Interpret(TYPE_INFO ti)
{
if (ti.dwKind == (uint)enum_dwTypeKind.TYPE_KIND_METADATA)
{
METADATA_TYPE dataType = (METADATA_TYPE)Marshal.PtrToStructure(ti.unionmember,
typeof(METADATA_TYPE));
}
}
}
}
Gereksinimler
Üst bilgi: sh.h
Ad Alanı: Microsoft.VisualStudio.Debugger.Interop
Derleme: Microsoft.VisualStudio.Debugger.Interop.dll