Suporte de biblioteca para assemblies mistos

O Visual C++ dá suporte ao uso da Biblioteca Padrão C++, da CRT (biblioteca de runtime C), da ATL e do MFC para aplicativos compilados com /clr (Compilação do Common Language Runtime). Isso permite que aplicativos existentes que usam essas bibliotecas também usem recursos .NET Framework.

Importante

As opções do compilador /clr:pure e /clr:safe foram preteridas no Visual Studio 2015 são incompatíveis com o Visual Studio 2017.

Esse suporte inclui a seguinte DLL e as bibliotecas de importação:

  • Msvcmrt[d].lib se você compilar com /clr. Assemblies mistos se vinculam a essa biblioteca de importação.

Esse suporte oferece vários benefícios relacionados:

  • A CRT e a Biblioteca Padrão C++ estão disponíveis para código misto. A CRT e a Biblioteca Padrão C++ fornecidas não são verificáveis; em última análise, suas chamadas ainda são roteadas para a mesma CRT e Biblioteca Padrão C++ que você está usando a partir do código nativo.

  • Tratamento correto de exceção unificada em imagens misturadas.

  • Inicialização estática de variáveis C++ em imagens misturadas.

  • Suporte para variáveis por AppDomain e por processo no código gerenciado.

  • Resolve os problemas de bloqueio do carregador aplicados a DLLs mistas compiladas no Visual Studio 2003 e anteriores.

Além disso, esse suporte apresenta as seguintes limitações:

  • Somente o modelo de DLL da CRT tem suporte para código compilado com /clr. Não há bibliotecas CRT estáticas com suporte a builds /clr.

Confira também