Exportar (0) Imprimir
Expandir todo

Convertir proyectos de modo mixto a lenguaje intermedio puro

Actualización: noviembre 2007

De forma predeterminada, todos los proyectos CLR de Visual C++ se enlazan a las bibliotecas en tiempo de ejecución de C. Por eso, estos proyectos se clasifican como aplicaciones de modo mixto, ya que combinan código nativo con código orientado a Common Language Runtime (código administrado). Cuando se compilan, la compilación se lleva a cabo en lenguaje intermedio (IL), también conocido como lenguaje intermedio de Microsoft (MSIL).

Para convertir la aplicación de modo mixto en lenguaje intermedio puro

  1. Quite los vínculos a las Bibliotecas en tiempo de ejecución de C (CRT):

    1. En el archivo .cpp que define el punto de entrada de la aplicación, cambie el punto de entrada a Main(). El uso de Main() indica que el proyecto no se vincula al CRT.

    2. En el Explorador de soluciones, haga clic con el botón secundario del mouse (ratón) en el proyecto y seleccione Propiedades en el menú contextual para abrir las páginas de propiedades de la aplicación.

    3. En la página de propiedades del proyecto Avanzadas para el campo Vinculador, seleccione Punto de entrada y escriba Main en este campo.

    4. Para aplicaciones de consola, seleccione el campo Subsistema en la página de propiedades de proyecto Sistema para el Vinculador y cámbielo a Consola (/SUBSYSTEM:CONSOLE).

      t337zeha.alert_note(es-es,VS.90).gifNota:

      No es necesario que establezca esta propiedad para aplicaciones de formularios Windows Forms porque el campo Subsistema está establecido de forma predeterminada en Windows (/SUBSYSTEM:WINDOWS).

    5. En stdafx.h, marque como comentario todas las instrucciones #include. Por ejemplo, en las aplicaciones de consola:

      // #include <iostream>
      // #include <tchar.h>
      

      O bien

      Por ejemplo, en las aplicaciones de formularios Windows Forms:

      // #include <stdlib.h>
      // #include <malloc.h>
      // #include <memory.h>
      // #include <tchar.h>
      
    6. Para las aplicaciones de formularios Windows Forms, en Form1.cpp, marque como comentario la instrucción #include que hace referencia a windows.h. Por ejemplo:

      // #include <windows.h>
      
  2. Agregue el código siguiente a stdafx.h:

    #ifndef __FLTUSED__
    #define __FLTUSED__
       extern "C" __declspec(selectany) int _fltused=1;
    #endif
    
  3. Quite todos los tipos no administrados:

    1. Donde sea necesario, reemplace los tipos no administrados por referencias a estructuras desde el espacio de nombres System. Los tipos administrados más comunes se enumeran en la tabla que sigue a continuación:

      Estructura

      Descripción

      Boolean

      Representa un valor booleano.

      Byte

      Representa un entero sin signo de 8 bits.

      Char

      Representa un carácter Unicode.

      DateTime

      Representa un instante de tiempo que se suele expresar mediante una fecha y una hora.

      Decimal

      Representa un número decimal.

      Double

      Representa un número de punto flotante y de doble precisión.

      Guid

      Representa un identificador único global (GUID).

      Int16

      Representa un entero con signo de 16 bits.

      Int32

      Representa un entero con signo de 32 bits.

      Int64

      Representa un entero con signo de 64 bits.

      IntPtr

      Tipo específico de la plataforma que se utiliza para representar un puntero o un identificador.

      SByte

      Representa un entero con signo de 8 bits.

      Single

      Representa un número de punto flotante de precisión simple.

      Timespan

      Representa un intervalo de tiempo.

      UInt16

      Representa un entero sin signo de 16 bits.

      UInt32

      Representa un entero sin signo de 32 bits.

      UInt64

      Representa un entero sin signo de 64 bits.

      UIntPtr

      Tipo específico de la plataforma que se utiliza para representar un puntero o un identificador.

      Tipo Void

      Indica un método que devuelve un valor, es decir, el método tiene el tipo de valor devuelto void.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2014 Microsoft