Interoperação com código não gerenciadoInteroperating with unmanaged code

O .NET Framework promove a interação com componentes COM, serviços COM+, bibliotecas de tipos externas e muitos serviços do sistema operacional.The .NET Framework promotes interaction with COM components, COM+ services, external type libraries, and many operating system services. Tipos de dados, assinaturas de método e mecanismos de tratamento de erros variam entre modelos de objetos gerenciados e não gerenciados.Data types, method signatures, and error-handling mechanisms vary between managed and unmanaged object models. Para simplificar a interoperação entre componentes do .NET Framework e o código não gerenciado e para facilitar o caminho de migração, o Common Language Runtime oculta de clientes e servidores as diferenças entre esses modelos de objeto.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.

O código que é executado sob o controle de runtime é chamado de código gerenciado.Code that executes under the control of the runtime is called managed code. Em contraste, o código executado fora do runtime é chamado de código não gerenciado.Conversely, code that runs outside the runtime is called unmanaged code. Componentes COM, interfaces ActiveX e funções da API do Windows são exemplos de código não gerenciado.COM components, ActiveX interfaces, and Windows API functions are examples of unmanaged code.

Nesta seçãoIn this section

Expondo componentes do COM ao .NET FrameworkExposing COM Components to the .NET Framework
Descreve como usar componentes COM de aplicativos do .NET Framework.Describes how to use COM components from .NET Framework applications.

Expondo componentes do .NET Framework ao COMExposing .NET Framework Components to COM
Descreve como usar componentes do .NET Framework de aplicativos COM.Describes how to use .NET Framework components from COM applications.

Consumindo funções de DLL não gerenciadasConsuming Unmanaged DLL Functions
Descreve como chamar funções de DLL não gerenciadas usando a invocação de plataforma.Describes how to call unmanaged DLL functions using platform invoke.

Marshaling de interoperabilidadeInterop Marshaling
Descreve o marshaling para invocação de plataforma e interoperabilidade COM.Describes marshaling for COM interop and platform invoke.

Como mapear HRESULTs e exceçõesHow to: Map HRESULTs and Exceptions
Descreve o mapeamento entre exceções e HRESULTs.Describes the mapping between exceptions and HRESULTs.

Equivalência de tipos e tipos de interoperabilidade inseridosType Equivalence and Embedded Interop Types
Descreve como as informações de tipo para tipos COM são inseridas em assemblies e como o Common Language Runtime determina a equivalência de tipos COM inseridos.Describes how type information for COM types is embedded in assemblies, and how the common language runtime determines the equivalence of embedded COM types.

Como gerar assemblies de interoperabilidade primários usando Tlbimp.exeHow to: Generate Primary Interop Assemblies Using Tlbimp.exe
Descreve como gerar assemblies de interoperabilidade primários usando Tlbimp.exe (Importador da Biblioteca de Tipos).Describes how to produce primary interop assemblies using Tlbimp.exe (Type Library Importer).

Como registrar assemblies de interoperabilidade primáriosHow to: Register Primary Interop Assemblies
Descreve como registrar os assemblies de interoperabilidade primários antes de referenciá-los em seus projetos.Describes how to register the primary interop assemblies before you can reference them in your projects.

Interoperabilidade COM sem registroRegistration-Free COM Interop
Descreve como a interoperabilidade COM pode ativar componentes sem usar o Registro do Windows.Describes how COM interop can activate components without using the Windows registry.

Como configurar componentes do COM baseados no .NET Framework para ativação sem registroHow to: Configure .NET Framework-Based COM Components for Registration-Free Activation
Descreve como criar um manifesto do aplicativo e como criar e inserir um manifesto do componente.Describes how to create an application manifest and how to create and embed a component manifest.

Wrappers COMCOM Wrappers
Descreve os wrappers fornecidos pela interoperabilidade COM.Describes the wrappers provided by COM interop.