Compartir vía


Compatibilidad con bibliotecas para ensamblados mixtos

Visual C++ admite el uso de la biblioteca estándar de C++, la biblioteca en tiempo de ejecución de C (CRT), ATL y MFC para las aplicaciones compiladas con /clr (compilación de Common Language Runtime). Esto permite que las aplicaciones existentes que usan estas bibliotecas también usen características de .NET Framework.

Importante

Las opciones del compilador /clr:pure y /clr:safe están en desuso en Visual Studio 2015 y no se admiten en Visual Studio 2017.

Esta compatibilidad incluye las siguientes bibliotecas DLL e importación:

  • Msvcmrt[d].lib si compila con /clr. Los ensamblados mixtos se vinculan a esta biblioteca de importación.

Esta compatibilidad proporciona varias ventajas relacionadas:

  • La bibliotecas estándar de CRT y C++ están disponibles para código mixto. Las bibliotecas estándar de CRT y C++ proporcionadas no son verificables; en última instancia, las llamadas siguen enrutadas a la misma biblioteca estándar de CRT y C++ que usa desde código nativo.

  • Corrija el control unificado de excepciones en imágenes mixtas.

  • Inicialización estática de variables de C++ en imágenes mixtas.

  • Compatibilidad con variables por appDomain y por proceso en código administrado.

  • Resuelve los problemas de bloqueo del cargador que se aplicaron a archivos DLL mixtos compilados en Visual Studio 2003 y versiones anteriores.

Además, esta compatibilidad presenta las siguientes limitaciones:

  • Solo se admite el modelo DLL de CRT para el código compilado con /clr. No hay bibliotecas CRT estáticas que admitan compilaciones /clr.

Consulte también