Aus der MDSN-Dokumentation :
Das DllImport-Attribut ist bei der Wiederverwendung von vorhandenem nicht verwaltetem Code in einer verwalteten Anwendung sehr nützlich. Beispielsweise muss Ihre verwaltete Anwendung möglicherweise Aufrufe an die nicht verwaltete WIN32-API vornehmen.
Wenn Sie eine .NET-Anwendung schreiben und eine Bibliothek keinen verwalteten Wrapper besitzt (der in nicht verwaltetem Code geschrieben ist), müssen Sie DllImport verwenden, um damit zu interagieren. Andernfalls können Sie auf verwaltete Bibliotheken mit einer using
-Anweisung verweisen, wie Sie normalerweise jede Basisklassenbibliothek verwenden würden.
DLLImport wird verwendet, um eine native DLL-Bibliothek in eine verwaltete (.net) Anwendung zu importieren. Zum Beispiel kann eine in C ++ geschriebene Bibliothek importiert und in Ihrem c # -Projekt verwendet werden.
Verwenden wird verwendet, um auf einen Namespace zu verweisen, der sich in einer der verwalteten referenzierten DLLs befindet. Dies sind normalerweise .net-Assemblies.
Die Direktive using
enthält einen Namespace von einer referenzierten verwalteten Assembly.
Das DllImport
wird zum Importieren von Methoden aus nicht verwalteten DLLs verwendet.
DllImport dient zum Importieren einer Funktion, die in einer DLL enthalten ist, die nicht von .NET verwaltet wird. Die using-Anweisungen dienen dazu, dass Ihr Code leicht auf andere .NET-Assemblies verweisen kann, ohne den vollständig qualifizierten Namen zu verwenden.