Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Los asistentes para aplicaciones de Visual C++ no crean proyectos comprobables.
Importante
Visual Studio 2015 está en desuso y Visual Studio 2017 no admite la creación de proyectos comprobables /clr:pure y /clr:safe. Si necesita código comprobable, se recomienda traducir el código a C#.
Sin embargo, si usa una versión anterior del conjunto de herramientas del compilador de Microsoft C++ que admite /clr:pure y /clr:safe, los proyectos se pueden convertir para que sean comprobables. En este tema se describe cómo establecer las propiedades del proyecto y modificar los archivos de origen del proyecto para transformar los proyectos de Visual Studio C++ para generar aplicaciones comprobables.
Configuración del compilador y del vinculador
De forma predeterminada, los proyectos de .NET usan la marca del compilador /clr y configuran el enlazador para el hardware x86 de destino. Para el código comprobable, debe usar la marca /clr:safe y debe indicar al enlazador que genere MSIL en lugar de instrucciones nativas de la máquina.
Para cambiar la configuración del compilador y del vinculador
Muestre la página de propiedades del proyecto. Para más información, vea Establecimiento de las propiedades del compilador y la compilación.
En la página General del nodo Propiedades de configuración, establezca la propiedad Compatible con Common Language Runtime en Compatible con Common Language Runtime de MSIL seguro(/clr:safe).
En la página Opciones avanzadas del nodo Enlazador, establezca la propiedad Tipo de imagen CLR en Forzar imagen de IL segura (/CLRIMAGETYPE:SAFE).
Eliminación de tipos de datos nativos
Dado que los tipos de datos nativos no son comprobables, aunque no se utilicen realmente, debe eliminar todos los archivos de cabecera que contengan tipos nativos.
Nota:
El procedimiento siguiente se aplica a los proyectos de aplicación de Windows Forms (.NET) y aplicación de consola (.NET).
Para quitar referencias a tipos de datos nativos
- Convierta en comentario todo en el archivo Stdafx.h.
Configuración de un punto de entrada
Dado que las aplicaciones comprobables no pueden usar las bibliotecas del entorno de ejecución de C (CRT), no pueden depender de CRT para llamar a la función principal como punto de entrada estándar. Esto significa que debe proporcionar explícitamente el nombre de la función a la que se llamará inicialmente al enlazador. (En este caso, se usa Main() en lugar de main() o _tmain() para indicar un punto de entrada que no sea CRT, pero dado que el punto de entrada debe especificarse explícitamente, este nombre es arbitrario).
Nota:
Los procedimientos siguientes se aplican a proyectos de aplicación de consola (.NET).
Para configurar un punto de entrada
Cambie _tmain() a Main() en el archivo .cpp principal del proyecto.
Muestre la página de propiedades del proyecto. Para más información, vea Establecimiento de las propiedades del compilador y la compilación.
En la página Avanzadas del nodo Enlazador, escriba
Maincomo el valor de la propiedad Punto de entrada.