Exportieren (0) Drucken
Alle erweitern
Dieser Artikel wurde maschinell übersetzt. Bewegen Sie den Mauszeiger über die Sätze im Artikel, um den Originaltext anzuzeigen. Weitere Informationen
Übersetzung
Original

DllImportAttribute-Klasse

Gibt an, dass die attributierte Methode durch eine nicht verwaltete DLL (Dynamic Link Library) als statischer Einstiegspunkt verfügbar gemacht wird.

System.Object
  System.Attribute
    System.Runtime.InteropServices.DllImportAttribute

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

[AttributeUsageAttribute(AttributeTargets.Method, Inherited = false)]
[ComVisibleAttribute(true)]
public sealed class DllImportAttribute : Attribute

Der DllImportAttribute-Typ macht die folgenden Member verfügbar.

  NameBeschreibung
Öffentliche MethodeUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsDllImportAttributeInitialisiert eine neue Instanz der DllImportAttribute-Klasse mit dem Namen der DLL, die die zu importierende Methode enthält.
Zum Seitenanfang

  NameBeschreibung
Öffentliche EigenschaftTypeId Bei Implementierung in einer abgeleiteten Klasse wird ein eindeutiger Bezeichner für dieses Attribute abgerufen. (Von Attribute geerbt.)
Öffentliche EigenschaftUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsValueRuft den Namen der DLL-Datei ab, die den Einstiegspunkt enthält.
Zum Seitenanfang

  NameBeschreibung
Öffentliche MethodeUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsEqualsInfrastruktur. Gibt einen Wert zurück, der angibt, ob diese Instanz gleich einem angegebenen Objekt ist. (Von Attribute geerbt.)
Öffentliche MethodeUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsGetHashCodeGibt den Hashcode für diese Instanz zurück. (Von Attribute geerbt.)
Öffentliche MethodeUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsGetTypeRuft den Type der aktuellen Instanz ab. (Von Object geerbt.)
Öffentliche MethodeIsDefaultAttributeBeim Überschreiben in einer abgeleiteten Klasse wird angegeben, ob der Wert dieser Instanz der Standardwert für die abgeleitete Klasse ist. (Von Attribute geerbt.)
Öffentliche MethodeUnterstützt von XNA FrameworkMatchBeim Überschreiben in einer abgeleiteten Klasse wird ein Wert zurückgegeben, der angibt, ob diese Instanz einem bestimmten Objekt entspricht. (Von Attribute geerbt.)
Öffentliche MethodeUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsToStringGibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Von Object geerbt.)
Zum Seitenanfang

  NameBeschreibung
Öffentliches FeldUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsBestFitMappingAktiviert bzw. deaktiviert das Verhalten der optimalen Zuordnung bei der Konvertierung von Unicode-Zeichen in ANSI-Zeichen.
Öffentliches FeldUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsCallingConventionGibt die Aufrufkonvention eines Einstiegspunktes an.
Öffentliches FeldUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsCharSetGibt an, wie Zeichenfolgenparameter an die Methode gemarshallt werden, und steuert die Namenszerlegung.
Öffentliches FeldUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsEntryPointGibt den Namen oder die Ordnungszahl des aufzurufenden DLL-Einstiegspunktes an.
Öffentliches FeldUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsExactSpellingSteuert, ob das DllImportAttribute.CharSet-Feld die Common Language Runtime anweist, eine nicht verwaltete DLL nach anderen Einstiegspunktnamen als dem angegebenen zu durchsuchen.
Öffentliches FeldUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsPreserveSigGibt an, ob nicht verwaltete Methoden, die über HRESULT-Rückgabewerte oder retval-Rückgabewerte verfügen, direkt übersetzt werden oder ob HRESULT-Rückgabewerte oder retval-Rückgabewerte automatisch in Ausnahmen konvertiert werden.
Öffentliches FeldUnterstützt von XNA FrameworkUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsSetLastErrorGibt an, ob der Aufgerufene vor dem Zurückgeben aus der attributierten Methode die Win32-API SetLastError aufruft.
Öffentliches FeldUnterstützt von  Portable KlassenbibliothekUnterstützt in .NET für Windows Store-AppsThrowOnUnmappableCharAktiviert bzw. deaktiviert das Auslösen einer Ausnahme bei einem nicht zuzuordnenden Unicode-Zeichen, das in das ANSI-Zeichen "?" konvertiert wird.
Zum Seitenanfang

  NameBeschreibung
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetIDsOfNamesOrdnet eine Reihe von Namen einer entsprechenden Reihe von Dispatchbezeichnern zu. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoRuft die Typinformationen für ein Objekt ab, mit deren Hilfe die Typinformationen für eine Schnittstelle abgerufen werden können. (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.GetTypeInfoCountRuft die Anzahl der Schnittstellen mit Typinformationen ab, die von einem Objekt bereitgestellt werden (0 oder 1). (Von Attribute geerbt.)
Explizite SchnittstellenimplementierungPrivate Methode_Attribute.InvokeStellt den Zugriff auf von einem Objekt verfügbar gemachte Eigenschaften und Methoden bereit. (Von Attribute geerbt.)
Zum Seitenanfang

Dieses Attribut kann auf Methoden angewendet werden.

Das DllImportAttribute-Attribut stellt die erforderlichen Informationen zum Aufrufen einer Funktion bereit, die aus einer nicht verwalteten DLL exportiert wurde. Sie müssen mindestens den Namen der DLL mit dem Einstiegspunkt angeben.

Sie wenden dieses Attribut direkt auf C#- und C++-Methodendefinitionen an. Der Visual Basic-Compiler gibt dieses Attribut jedoch bei Verwendung der Declare-Anweisung aus. Bei komplexen Methodendefinitionen, die BestFitMapping-Felder, CallingConvention-Felder, ExactSpelling-Felder, PreserveSig-Felder, SetLastError-Felder oder ThrowOnUnmappableChar-Felder enthalten, wenden Sie dieses Attribut direkt auf Visual Basic-Methodendefinitionen an.

Hinweis   Das Attribut wird von JScript nicht unterstützt. Sie können mithilfe von C#- oder Visual Basic-Wrapperklassen auf nicht verwaltete API-Methoden aus JScript-Programmen zugreifen.

Weitere Informationen über das Zugreifen auf Funktionen in nicht verwalteten DLLs mit dem Plattformaufruf-Dienst finden Sie unter Verwenden nicht verwalteter DLL-Funktionen.

HinweisHinweis

Das DllImportAttribute unterstützt kein Marshalling von generischen Typen.

Im folgenden Codebeispiel wird die Verwendung des DllImportAttribute-Attributs zum Importieren der Win32-Funktion MessageBox gezeigt. Im Codebeispiel wird dann die importierte Methode aufgerufen.


using System;
using System.Runtime.InteropServices;

class Example
{
    // Use DllImport to import the Win32 MessageBox function.
    [DllImport("user32.dll", CharSet = CharSet.Unicode)]
    public static extern int MessageBox(IntPtr hWnd, String text, String caption, uint type);

    static void Main()
    {
        // Call the MessageBox function using platform invoke.
        MessageBox(new IntPtr(0), "Hello World!", "Hello Dialog", 0);
    }
}


.NET Framework

Unterstützt in: 4.5, 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Unterstützt in: 4, 3.5 SP1

Portable Klassenbibliothek

Unterstützt in: Portable Klassenbibliothek

.NET für Windows Store-Apps

Unterstützt in: Windows 8

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core-Rolle wird nicht unterstützt), Windows Server 2008 R2 (Server Core-Rolle wird mit SP1 oder höher unterstützt; Itanium wird nicht unterstützt)

Es werden nicht alle Versionen sämtlicher Plattformen von .NET Framework unterstützt.. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.

Alle öffentlichen static (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Community-Beiträge

HINZUFÜGEN
Microsoft führt eine Onlineumfrage durch, um Ihre Meinung zur MSDN-Website zu erfahren. Wenn Sie sich zur Teilnahme entscheiden, wird Ihnen die Onlineumfrage angezeigt, sobald Sie die MSDN-Website verlassen.

Möchten Sie an der Umfrage teilnehmen?
Anzeigen:
© 2015 Microsoft