Interoperabilität mit nicht verwaltetem CodeInteroperating with unmanaged code

.NET Framework stuft die Interaktion mit COM-Komponenten, COM+-Diensten, externen Typbibliotheken und vielen Betriebssystemdiensten herauf.The .NET Framework promotes interaction with COM components, COM+ services, external type libraries, and many operating system services. Datentypen, Methodensignaturen und Mechanismen zur Behandlung von Fehlern variieren zwischen verwalteten und nicht verwalteten Objektmodellen.Data types, method signatures, and error-handling mechanisms vary between managed and unmanaged object models. Um die Interoperation zwischen .NET Framework-Komponenten und nicht verwaltetem Code sowie den Migrationspfad zu vereinfachen, verbirgt die Common Language Runtime die Unterschiede in diesen Objektmodellen vor jeweils Clients und Servern.To simplify interoperation between .NET Framework components and unmanaged code and to ease the migration path, the common language runtime conceals from both clients and servers the differences in these object models.

Code, der unter der Kontrolle der Runtime ausgeführt wird, wird als verwalteter Code bezeichnet.Code that executes under the control of the runtime is called managed code. Umgekehrt wird Code, der außerhalb der Runtime ausgeführt wird, wird als nicht verwalteter Code bezeichnet.Conversely, code that runs outside the runtime is called unmanaged code. Beispiele für nicht verwalteten Code sind COM-Komponenten, ActiveX-Schnittstellen und Windows API-Funktionen.COM components, ActiveX interfaces, and Windows API functions are examples of unmanaged code.

In diesem AbschnittIn this section

Verfügbarmachen von COM-Komponenten für .NET FrameworkExposing COM Components to the .NET Framework
Beschreibt, wie COM-Komponenten aus .NET Framework-Anwendungen verwendet werdenDescribes how to use COM components from .NET Framework applications.

Verfügbarmachen von .NET Framework-Komponenten in COMExposing .NET Framework Components to COM
Beschreibt, wie .NET Framework-Komponenten aus COM-Anwendungen verwendet werdenDescribes how to use .NET Framework components from COM applications.

Verwenden nicht verwalteter DLL-FunktionenConsuming Unmanaged DLL Functions
Beschreibt das Aufrufen von nicht verwalteten DLL-Funktionen mithilfe von PlattformaufrufDescribes how to call unmanaged DLL functions using platform invoke.

Interop Marshaling (Interop-Marshalling)Interop Marshaling
Beschreibt das Marshalling für COM-Interop sowie PlattformaufrufDescribes marshaling for COM interop and platform invoke.

Vorgehensweise: Zuordnen von HRESULT-Werten und AusnahmenHow to: Map HRESULTs and Exceptions
Beschreibt die Zuordnung zwischen Ausnahmen und HRESULTsDescribes the mapping between exceptions and HRESULTs.

Typäquivalenz und eingebettete Interop-TypenType Equivalence and Embedded Interop Types
Beschreibt, wie die Typinformation für COM-Typen in Assemblys eingebettet wird und wie die Common Language Runtime die Äquivalenz von eingebetteten COM-Typen bestimmtDescribes how type information for COM types is embedded in assemblies, and how the common language runtime determines the equivalence of embedded COM types.

Vorgehensweise: Generieren primärer Interopassemblys mit „Tlbimp.exe“How to: Generate Primary Interop Assemblies Using Tlbimp.exe
Beschreibt, wie primäre Interop-Assemblys mit Tlbimp.exe (Type Library Importer-Tool) erstellt werdenDescribes how to produce primary interop assemblies using Tlbimp.exe (Type Library Importer).

Vorgehensweise: Registrieren primärer InteropassemblysHow to: Register Primary Interop Assemblies
Beschreibt, wie die primären Interop-Assemblys registriert werden, bevor Sie in Ihren Projekten auf diese verweisen könnenDescribes how to register the primary interop assemblies before you can reference them in your projects.

COM-Interop ohne RegistrierungRegistration-Free COM Interop
Beschreibt, wie COM-Interop Komponenten aktivieren kann, ohne die Windows-Registrierung zu verwendenDescribes how COM interop can activate components without using the Windows registry.

Vorgehensweise: Konfigurieren von .NET Framework-basierten COM-Komponenten für die Aktivierung ohne RegistrierungHow to: Configure .NET Framework-Based COM Components for Registration-Free Activation
Beschreibt, wie ein Anwendungsmanifest erstellt wird und wie ein Komponentenmanifest erstellt und eingebettet wirdDescribes how to create an application manifest and how to create and embed a component manifest.

COM-WrapperCOM Wrappers
Beschreibt die von COM-Interop bereitgestellten WrapperDescribes the wrappers provided by COM interop.