ProgIdAttribute Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ermöglicht es dem Benutzer, die ProgID einer Klasse anzugeben.
public ref class ProgIdAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, Inherited=false)]
public sealed class ProgIdAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Class, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class ProgIdAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, Inherited=false)>]
type ProgIdAttribute = class
inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Class, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ProgIdAttribute = class
inherit Attribute
Public NotInheritable Class ProgIdAttribute
Inherits Attribute
- Vererbung
- Attribute
Beispiele
Im folgenden Beispiel wird veranschaulicht, wie sie auf eine Klasse angewendet ProgIdAttribute werden. Die Anwendung ruft dann alle Attribute von MyClassund druckt die Value Eigenschaft von ProgIdAttribute.
[ClassInterface(ClassInterfaceType::AutoDispatch)]
[ProgId("InteropSample.MyClass")]
public ref class MyClass
{
public:
MyClass(){}
};
int main()
{
try
{
AttributeCollection^ attributes;
attributes = TypeDescriptor::GetAttributes( MyClass::typeid );
ProgIdAttribute^ progIdAttributeObj = dynamic_cast<ProgIdAttribute^>(attributes[ ProgIdAttribute::typeid ]);
Console::WriteLine( "ProgIdAttribute's value is set to : {0}", progIdAttributeObj->Value );
}
catch ( Exception^ e )
{
Console::WriteLine( "Exception : {0}", e->Message );
}
}
[ClassInterface(ClassInterfaceType.AutoDispatch)]
[ProgId("InteropSample.MyClass")]
public class MyClass
{
public MyClass() {}
}
class TestApplication
{
public static void Main()
{
try
{
AttributeCollection attributes;
attributes = TypeDescriptor.GetAttributes(typeof(MyClass));
ProgIdAttribute progIdAttributeObj = (ProgIdAttribute)attributes[typeof(ProgIdAttribute)];
Console.WriteLine("ProgIdAttribute's value is set to : " + progIdAttributeObj.Value);
}
catch(Exception e)
{
Console.WriteLine("Exception : " + e.Message);
}
}
}
<ClassInterface(ClassInterfaceType.AutoDispatch), ProgId("InteropSample.MyClass")> _
Public Class [MyClass]
Public Sub New()
End Sub
End Class
Class TestApplication
Public Shared Sub Main()
Try
Dim attributes As AttributeCollection
attributes = TypeDescriptor.GetAttributes(GetType([MyClass]))
Dim progIdAttributeObj As ProgIdAttribute = CType(attributes(GetType(ProgIdAttribute)), ProgIdAttribute)
Console.WriteLine(("ProgIdAttribute's value is set to : " + progIdAttributeObj.Value))
Catch e As Exception
Console.WriteLine(("Exception : " + e.Message.ToString()))
End Try
End Sub
End Class
End Namespace 'InteropSample
Hinweise
Sie können dieses Attribut auf Klassen anwenden.
ProgIDs werden automatisch für eine Klasse generiert, indem der Namespace mit dem Typnamen kombiniert wird. Dies kann jedoch eine ungültige ProgID erzeugen, da ProgIDs auf 39 Zeichen beschränkt sind und keine Interpunktion außer einem Punkt enthalten können. In diesem Fall kann der Klasse eine ProgID manuell zugewiesen werden.ProgIdAttribute
Konstruktoren
| Name | Beschreibung |
|---|---|
| ProgIdAttribute(String) |
Initialisiert eine neue Instanz der |
Eigenschaften
| Name | Beschreibung |
|---|---|
| TypeId |
Wenn sie in einer abgeleiteten Klasse implementiert wird, wird ein eindeutiger Bezeichner für diese Attribute. (Geerbt von Attribute) |
| Value |
Ruft die ProgID der Klasse ab. |
Methoden
| Name | Beschreibung |
|---|---|
| Equals(Object) |
Gibt einen Wert zurück, der angibt, ob diese Instanz einem angegebenen Objekt entspricht. (Geerbt von Attribute) |
| GetHashCode() |
Gibt den Hashcode für diese Instanz zurück. (Geerbt von Attribute) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| IsDefaultAttribute() |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, gibt an, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist. (Geerbt von Attribute) |
| Match(Object) |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem angegebenen Objekt entspricht. (Geerbt von Attribute) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Ordnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Geerbt von Attribute) |
| _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) |
Ruft die Typinformationen für ein Objekt ab, mit denen die Typinformationen für eine Schnittstelle abgerufen werden können. (Geerbt von Attribute) |
| _Attribute.GetTypeInfoCount(UInt32) |
Ruft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Geerbt von Attribute) |
| _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Bietet Zugriff auf Eigenschaften und Methoden, die von einem Objekt verfügbar gemacht werden. (Geerbt von Attribute) |