Páginas de propiedades del enlazador

Las siguientes propiedades se encuentran en Project>Properties>Configuration Properties>Linker. Para obtener más información sobre el enlazador, vea CL Invokes the Linker and Linker options .

Página general de propiedades

Archivo de salida

La /OUT opción invalida el nombre y la ubicación predeterminados del programa que crea el enlazador.

Mostrar progreso

Imprime los mensajes de progreso del enlazador.

Choices

  • No establecido: sin detalles.
  • Mostrar todos los mensajes de progreso : muestra todos los mensajes de progreso.
  • Para bibliotecas buscadas : muestra mensajes de progreso que indican solo las bibliotecas que se han buscado.
  • Acerca del plegado COMDAT durante la vinculación optimizada : muestra información sobre el plegado COMDAT durante la vinculación optimizada.
  • Acerca de los datos eliminados durante la vinculación optimizada : muestra información sobre las funciones y los datos quitados durante la vinculación optimizada.
  • Acerca de los módulos incompatibles con SEH : muestra información sobre los módulos incompatibles con el control de excepciones seguros.
  • Acerca de la actividad del vinculador relacionada con el código administrado : muestra información sobre la actividad del vinculador relacionada con el código administrado.

Versión

La /VERSION opción indica al enlazador que coloque un número de versión en el encabezado del .exe archivo o .dll . Use DUMPBIN /HEADERS para ver el campo de versión de la imagen de OPTIONAL HEADER VALUES y ver el efecto de /VERSION.

Habilitar vinculación incremental

Habilita la vinculación incremental. (/INCREMENTAL, /INCREMENTAL:NO)

Especifica la ubicación del archivo de base de datos del enlace incremental. (/ILK:[name])

Suprimir la pancarta de inicio

La /NOLOGO opción impide que se muestre el mensaje de copyright y el número de versión.

Omitir biblioteca de importación

Esta propiedad indica al enlazador que no vincule ninguna .lib salida generada a partir de esta compilación en ningún proyecto dependiente. Permite que el sistema de proyectos administre los archivos .dll que no generan un archivo .lib al compilarse. Si un proyecto depende de otro proyecto que genere un archivo DLL, el sistema de proyectos vincula automáticamente el .lib archivo generado por ese proyecto secundario. Esta propiedad puede ser innecesaria en proyectos que generan DLL COM o DLL de solo recursos, ya que estas DLL no tienen exportaciones relevantes. Si un archivo DLL no tiene exportaciones, el enlazador no genera un .lib archivo. Si no hay ningún archivo de exportación .lib presente y el sistema del proyecto indica al enlazador que vincule con el archivo DLL que falta, se produce un error en el vínculo. Use la propiedad Ignore Import Library (Omitir biblioteca de importación) para resolver este problema. Cuando esta propiedad se establece en Sí, el sistema del proyecto omite la presencia o ausencia del .lib archivo y garantiza que cualquier proyecto que dependa de este proyecto no se vincule con el archivo inexistente .lib .

Para obtener acceso a esta propiedad mediante programación, vea IgnoreImportLibrary.

Registrar resultados

Ejecuta regsvr32.exe /s $(TargetPath) sobre el resultado de la compilación, solo válido para proyectos .dll. Para los proyectos .exe, esta propiedad se ignora. Para registrar una salida .exe, establezca un evento posterior a la compilación para la configuración a fin de llevar a cabo el registro personalizado que siempre se requiere para los archivos .exe registrados.

Para obtener acceso a esta propiedad mediante programación, vea RegisterOutput.

Redirección por usuario

El registro en Visual Studio se ha realizado tradicionalmente en HKEY_CLASSES_ROOT (HKCR). Con Windows Vista y sistemas operativos posteriores, para acceder a HKCR, debe ejecutar Visual Studio en modo con privilegios elevados. Los desarrolladores no siempre desean ejecutar en modo elevado, pero aun así deben trabajar con el registro. La redirección por usuario le permite registrarte sin tener que ejecutar en modo elevado.

La redirección por usuario hace que cualquier escritura en HKCR se redirija a HKEY_CURRENT_USER (HKCU). Si se desactiva la redirección por usuario, se puede producir un error de compilación Project PRJ0050 cuando el programa intenta escribir en HKCR.

Directorios de bibliotecas adicionales

Permite al usuario anular la ruta de la biblioteca del entorno. (/LIBPATH:folder)

Especifica si se van a vincular los .lib archivos generados por proyectos dependientes. Normalmente, se desea vincular los archivos .lib, pero es posible que no se desee hacerlo con determinadas DLL.

También puede especificar un .obj archivo proporcionando el nombre de archivo y la ruta de acceso relativa, por ejemplo, ..\..\MyLibProject\MyObjFile.obj. Si el código fuente del .obj archivo tiene un #include para un encabezado precompilado, por ejemplo, pch.h, el pch.obj archivo se encuentra en la misma carpeta que MyObjFile.obj. También debe agregar pch.obj como una dependencia adicional.

Usar entradas de dependencia de biblioteca

Especifica si usar las entradas de la herramienta del bibliotecario en lugar del propio archivo de biblioteca al vincular las salidas de la biblioteca de las dependencias del proyecto. En un proyecto grande, cuando un proyecto dependiente genera un .lib archivo, se deshabilita la vinculación incremental. Si hay muchos proyectos dependientes que generan .lib archivos, la compilación de la aplicación puede tardar mucho tiempo. Cuando esta propiedad se establece en .lib, el sistema de proyectos vincula los archivos .obj para los archivos generados por los proyectos de los que depende, lo que permite la vinculación incremental.

Para obtener información sobre cómo acceder a la página de propiedades del enlazador General, consulte Establecer propiedades del compilador y de compilación.

Especifica si el enlazador debe mostrar un indicador de progreso que indique qué porcentaje del vínculo está completado. De forma predeterminada, el enlazador no muestra esta información de estado. (/LTCG:STATUS|LTCG:NOSTATUS)

Evitar el enlace de archivos DLL

/ALLOWBIND:NO establece un bit en el encabezado de una DLL que indica a Bind.exe que no se permite la vinculación de la imagen. Es posible que no se desee que una DLL se vincule si ha sido firmada digitalmente. (La vinculación invalida la firma).

Tratar las advertencias del vinculador como errores

Si esta propiedad se establece en Sí (/WX), no se genera ningún archivo de salida si el enlazador genera una advertencia.

Forzar salida de archivo

La /FORCE opción indica al enlazador que cree un .exe archivo o dll aunque se haga referencia a un símbolo pero no definido (UNRESOLVED) o se defina varias veces (MULTIPLE). Podría crear un archivo no válido .exe .

Choices

  • Habilitado - /FORCE sin argumentos implica tanto /FORCE:MULTIPLE como /FORCE:UNRESOLVED.
  • Multiplicar solo símbolo definido : use /FORCE:MULTIPLE para crear un archivo de salida, incluso si LINK encuentra más de una definición para un símbolo.
  • Solo símbolo indefinido - Use /FORCE:UNRESOLVED para crear un archivo de salida independientemente de que LINK encuentre un símbolo indefinido. /FORCE:UNRESOLVED se omite si el símbolo del punto de entrada no está resuelto.

Crear una imagen revisable activa

Prepara una imagen para aplicar una revisión activa.

Choices

  • Habilitado - Prepara una imagen para la aplicación de revisiones en caliente.
  • Solo para imagen x86 - Prepara una imagen x86 para la aplicación de revisiones en caliente.
  • Solo imagen x64 - Prepara una imagen x64 para la aplicación de revisiones en caliente.
  • Solo imagen de Itanium - Prepara una imagen de Itanium para la aplicación de parches en caliente.

Especificar atributos de sección

La /SECTION opción cambia los atributos de una sección, reemplazando los atributos establecidos cuando se compiló el .obj archivo de la sección.

Página de propiedades de entrada

Dependencias adicionales

Especifica elementos de dependencia adicionales que se van a agregar a la línea de comandos del vínculo, por ejemplo kernel32.lib.

Omitir todas las bibliotecas predeterminadas

La /NODEFAULTLIB opción indica al enlazador que quite una o varias bibliotecas predeterminadas de la lista de bibliotecas que busca al resolver referencias externas.

Omitir bibliotecas predeterminadas específicas

Especifica uno o más nombres de las bibliotecas predeterminadas que se ignorarán. Separe varias bibliotecas con punto y coma. (/NODEFAULTLIB:[name, name, ...])

Archivo de definición de módulo

La /DEF opción pasa un archivo de definición de módulo (.def) al enlazador. Solo se puede especificar un archivo .def para LINK.

Agregar módulo a ensamblado

La /ASSEMBLYMODULE opción permite agregar una referencia de módulo a un ensamblado. La información de tipo en el módulo no estará disponible para el programa de ensamblado que agregó la referencia del módulo. Sin embargo, la información de tipo en el módulo estará disponible para cualquier programa que haga referencia al ensamblado.

Insertar archivo de recursos administrados

/ASSEMBLYRESOURCE inserta un archivo de recursos en el archivo de salida.

Forzar referencias de símbolos

La /INCLUDE opción indica al enlazador que agregue un símbolo especificado a la tabla de símbolos.

Archivos DLL cargados de retraso

La /DELAYLOAD opción provoca la carga diferida de archivos DLL. El nombre del archivo DLL especifica un archivo DLL para retrasar la carga.

La opción /ASSEMBLYLINKRESOURCE crea un vínculo a un recurso de .NET Framework en el archivo de salida. El vinculador no coloca el archivo de recursos en el archivo de salida.

Página de propiedades del archivo de manifiesto

Generar manifiesto

/MANIFEST especifica que el enlazador debe crear un archivo de manifiesto en paralelo.

Archivo de manifiesto

/MANIFESTFILE permite cambiar el nombre predeterminado del archivo de manifiesto. El nombre predeterminado del archivo de manifiesto es el nombre de archivo con .manifest anexado.

Dependencias de manifiesto adicionales

/MANIFESTDEPENDENCY permite especificar atributos que se colocarán en la sección de dependencias del archivo de manifiesto.

Permitir aislamiento

Especifica el comportamiento de la búsqueda de manifiesto. (/ALLOWISOLATION:NO)

Habilitar el Control de cuentas de usuario (UAC)

Especifica si el Control de cuentas de usuario está habilitado. (/MANIFESTUAC, /MANIFESTUAC:NO)

Nivel de ejecución de UAC

Especifica el nivel de ejecución solicitado para la aplicación cuando se ejecuta con control de cuentas de usuario. (/MANIFESTUAC:level=[value])

Choices

  • asInvoker - Nivel de ejecución de UAC: como invocador.
  • highestAvailable - Nivel de ejecución de UAC: más alto disponible.
  • requireAdministrator - Nivel de ejecución de UAC: requerir administrador.

Eludir la protección de la interfaz de usuario de UAC

Especifica si se omitirán los niveles de protección de la interfaz de usuario para otras ventanas del escritorio. Establezca esta propiedad en Sí solo para aplicaciones de accesibilidad. (/MANIFESTUAC:uiAccess=[true | false])

Página de propiedades de depuración

Generar información de depuración

Esta opción permite la creación de información de depuración para el .exe archivo o el archivo DLL.

Choices

  • No : no genera información de depuración.
  • Generar información de depuración - Crear una base de datos completa del programa (PDB) ideal para su distribución en el Servidor de símbolos de Microsoft.
  • Generar información de depuración optimizada para un enlazado más rápido - Genera un PDB ideal para un ciclo rápido de edición, enlazado y depuración.
  • Generar información de depuración optimizada para compartir y publicar : genera una PDB ideal para un ciclo de edición y depuración compartido.

Generar archivo de base de datos de programas

De forma predeterminada, cuando /DEBUG se especifica, el enlazador crea una PDB que contiene información de depuración. El nombre de archivo predeterminado para PDB tiene el nombre base del programa y la extensión .pdb.

Quitar símbolos privados

La /PDBSTRIPPED opción crea un segundo archivo PDB al compilar la imagen del programa con cualquiera de las opciones del compilador o enlazador que generan un archivo PDB (/DEBUG, /Z7, /Zdo /Zi).

Generar archivo de mapa

La /MAP opción indica al enlazador que cree un archivo mapfile.

Nombre de archivo de asignaciones

Nombre especificado por el usuario para el mapfile. Reemplaza el nombre predeterminado.

Exportaciones de mapas

La /MAPINFO opción indica al enlazador que incluya la información especificada en un archivo mapfile, que se crea si especifica la /MAP opción . EXPORTS indica al enlazador que incluya funciones exportadas.

Ensamblado depurable

/ASSEMBLYDEBUG genera el atributo DebuggableAttribute con información de seguimiento de depuración y deshabilita las optimizaciones JIT.

Compatibilidad con la depuración dinámica de C++

(Versión preliminar) Establezca el indicador del enlazador /DYNAMICDEOPT para habilitar la depuración dinámica de C++. Coloca puntos de interrupción desoptimizados y avanza paso a paso en cualquier lugar con la desoptimización de funciones bajo demanda. Use este modo para depurar código optimizado.

Página de propiedades del sistema

Subsistema

La /SUBSYSTEM opción indica al sistema operativo cómo ejecutar el .exe archivo. La opción de subsistema afecta al símbolo de punto de entrada (o función de punto de entrada) que el enlazador seleccionará.

Choices

  • Sin establecer : no hay ningún conjunto de subsistemas.
  • Consola : aplicación en modo de caracteres Win32. El sistema operativo asigna una consola a las aplicaciones de consola. Si main se define o wmain , CONSOLE es el valor predeterminado.
  • Windows: la aplicación no requiere una consola, probablemente porque crea su propio windows para la interacción con el usuario. Si WinMain se define o wWinMain , WINDOWS es el valor predeterminado.
  • Native: controladores de dispositivo para Windows NT. Si /DRIVER:WDM se especifica , NATIVE es el valor predeterminado.
  • Aplicación EFI: aplicación EFI.
  • Controlador del servicio de arranque EFI : controlador del servicio de arranque EFI.
  • EFI ROM - EFI ROM.
  • Tiempo de ejecución de EFI : tiempo de ejecución de EFI.
  • POSIX: aplicación que se ejecuta con el subsistema POSIX en Windows NT.

Versión mínima requerida

Especifique la versión mínima requerida del subsistema. Escriba números decimales en el intervalo de 0 a 65 535.

Tamaño de reserva del montón

Especifica el tamaño total asignado al montón en memoria virtual. El valor predeterminado es 1 MB. (/HEAP:reserve)

Tamaño de confirmación del montón

Especifica el tamaño total asignado al heap en memoria física. El valor predeterminado es 4 KB. (/HEAP:reserve,commit)

Tamaño de reserva de la pila

Especifica el tamaño total asignado a la pila en la memoria virtual. El valor predeterminado es 1 MB. (/STACK:reserve)

Tamaño confirmado de la pila

Especifica el tamaño total asignado a la pila en la memoria física. El valor predeterminado es 4 KB. (/STACK:reserve,commit)

Habilitar direcciones grandes

La /LARGEADDRESSAWARE opción indica al enlazador que la aplicación puede controlar direcciones de más de 2 gigabytes. De forma predeterminada, /LARGEADDRESSAWARE:NO se habilita si no se especifica de otro modo /LARGEADDRESSAWARE en la línea de enlace.

Servidor de Terminal

La /TSAWARE opción establece una marca en el IMAGE_OPTIONAL_HEADERDllCharacteristics campo del encabezado opcional de la imagen de programa. Si se establece esta marca, Terminal Server no realizará determinados cambios en la aplicación.

Intercambio de ejecución desde CD

La /SWAPRUN opción indica al sistema operativo que copie primero la salida del enlazador en un archivo de intercambio y, a continuación, ejecute la imagen desde allí. Esta opción es una característica Windows NT 4.0 y versiones posteriores. Cuando CD se especifica , el sistema operativo copiará la imagen en un disco extraíble en un archivo de página y, a continuación, la cargará.

Intercambio de ejecución desde la red

La /SWAPRUN opción indica al sistema operativo que copie primero la salida del enlazador en un archivo de intercambio y, a continuación, ejecute la imagen desde allí. Esta opción es una característica Windows NT 4.0 y versiones posteriores. Si NET se especifica, el sistema operativo copia primero la imagen binaria de la red en un archivo de intercambio y la carga desde allí. Esta opción es útil para ejecutar aplicaciones a través de la red.

Controlador

Use la opción del enlazador /DRIVER para crear un controlador de modo kernel NT de Windows.

Choices

  • No establecido : configuración predeterminada del controlador.
  • Controlador - Controlador.
  • Solo UP - /DRIVER:UPONLY hace que el enlazador añada el bit IMAGE_FILE_UP_SYSTEM_ONLY a las características del encabezado de salida para especificar que se trata de un controlador de un solo procesador (UP). El sistema operativo se negará a cargar un controlador UP en un sistema multiprocesador (MP).
  • WDM - /DRIVER:WDM hace que el enlazador establezca el bit IMAGE_DLLCHARACTERISTICS_WDM_DRIVER en el campo DllCharacteristics del encabezado opcional.

Página de propiedades de optimización

Referencias

/OPT:REF elimina funciones o datos a los que nunca se hace referencia. /OPT:NOREF mantiene funciones o datos a los que nunca se hace referencia.

Habilitar plegamiento de COMDAT

Utiliza /OPT:ICF[=iterations] para realizar un plegado de COMDAT idéntico.

Orden de función

La /ORDER opción indica a LINK que optimice el programa colocando determinados COMDAT en la imagen en un orden predeterminado. LINK coloca las funciones en el orden especificado dentro de cada sección de la imagen.

Base de datos guiada por perfiles

Especifique el .pgd archivo para las optimizaciones guiadas por perfiles. (/PGD)

Especifica la generación de código en tiempo de vínculo. (/LTCG)

Choices

  • Valor predeterminado : valor LTCG predeterminado.
  • Usar generación rápida de código en tiempo de enlace: utiliza la generación de código en tiempo de enlace con /FASTGENPROFILE.
  • Usar generación de código en tiempo de enlace: utiliza generación de código en tiempo de enlace.
  • Optimización guiada por perfil - Instrumentar: usar optimización guiada por perfil con :PGINSTRUMENT.
  • Optimización guiada por perfiles: optimización : especifica que el enlazador debe usar los datos de perfil creados después de ejecutar el binario instrumentado para crear una imagen optimizada.
  • Optimización guiada por perfiles: actualización : permite y realiza un seguimiento de una lista de archivos de entrada que se van a agregar o modificar a partir de lo que se especificó en la :PGINSTRUMENT fase.

Especifica .iobj la ubicación del archivo. (/LTCGOUT:[name])

Página de propiedades IDL insertada

Comandos MIDL

Especifique las opciones de la línea de comandos MIDL. (/MIDL:@responsefile)

Omitir IDL incrustado

La /IGNOREIDL opción especifica que los atributos IDL del código fuente no se deben procesar en un .idl archivo.

Nombre combinado del archivo base de IDL

La /IDLOUT opción especifica el nombre y la extensión del .idl archivo.

Biblioteca de tipos

La /TLBOUT opción especifica el nombre y la extensión del .tlb archivo.

Identificador de recurso de TypeLib

Permite especificar el identificador de recurso de la biblioteca de tipos generada por el enlazador. (/TLBID:id)

página de propiedades de metadatos de Windows

Generación de metadatos de Windows

Habilita o deshabilita la generación de metadatos de Windows.

Choices

  • Yes: habilite la generación de archivos de metadatos de Windows.
  • No: deshabilite la generación de archivos de metadatos de Windows.

archivo de metadatos de Windows

El modificador de opción /WINMDFILE.

Archivo de clave de metadatos de Windows

Especifique una clave o un par de claves para firmar los metadatos de Windows. (/WINMDKEYFILE:filename)

contenedor de claves de metadatos de Windows

Especifique un contenedor de claves para firmar los metadatos de Windows. (/WINMDKEYCONTAINER:name)

Signo de retraso de metadatos de Windows

Realice parcialmente la firma de los metadatos de Windows. Use /WINMDDELAYSIGN si solo desea colocar la clave pública en los metadatos de Windows. El valor predeterminado es /WINMDDELAYSIGN:NO.

Página de propiedades Avanzadas

Punto de entrada

La /ENTRY opción especifica una función de punto de entrada como la dirección inicial de un .exe archivo o DLL.

Sin punto de entrada

La /NOENTRY opción es necesaria para crear un archivo DLL de solo recursos. Use esta opción para evitar que LINK vincule una referencia a _main en el archivo DLL.

Establecer suma de comprobación

La opción /RELEASE define la suma de verificación en el encabezado de un archivo .exe.

Dirección base

Establece una dirección base para el programa. (/BASE:{address[,size] | @filename,key})

Dirección base aleatoria

Dirección base aleatoria. (/DYNAMICBASE[:NO])

Dirección base fija

Crea un programa que solo se puede cargar en su dirección base preferida. (/FIXED[:NO])

Prevención de ejecución de datos (DEP)

Marca un archivo ejecutable como probado para que sea compatible con la característica de prevención de ejecución de datos Windows. (/NXCOMPAT[:NO])

Desactivar generación de ensamblados

La opción /NOASSEMBLY indica al enlazador que cree una imagen para el archivo de salida actual sin un ensamblado .NET Framework.

Descargar el archivo DLL cargado retrasado

El modificador UNLOAD le indica a la función auxiliar de carga diferida que admita la descarga explícita de la DLL. (/DELAY:UNLOAD)

Archivo DLL de carga diferida nobind

El calificador NOBIND indica al enlazador que no incluya una tabla de direcciones de importación vinculable (IAT) en la imagen final. Con la configuración predeterminada, se crea la IAT enlazable para las DLL de carga retrasada. (/DELAY:NOBIND)

Importar biblioteca

Invalida el nombre de la biblioteca de importación predeterminada. (/IMPLIB:filename)

Combinar secciones

La /MERGE opción combina la primera sección con la segunda sección y proporciona a la sección resultante el nombre de la segunda sección. Por ejemplo, /merge:.rdata=.text combina la .rdata sección con la .text sección y asigna un nombre a la sección .textcombinada.

Máquina objetivo

La /MACHINE opción especifica la plataforma de destino para el programa.

Choices

  • No fijado
  • MachineARM
  • MachineARM64
  • MachineARM64EC
  • MachineARM64X
  • MachineEBC
  • MachineX64
  • MachineX86

Máquina objetivo

La /MACHINE opción especifica la plataforma de destino para el programa.

Choices

  • No fijado
  • MachineARM
  • MachineARM64
  • MachineEBC
  • MachineIA64
  • MachineMIPS
  • MachineMIPS16
  • MachineMIPSFPU
  • MachineMIPSFPU16
  • MachineSH4
  • MachineTHUMB
  • MachineX64
  • MachineX86

Perfil

Produce un archivo de salida que se puede usar con el generador de perfiles de Herramientas de rendimiento. Requiere que la propiedad Generar información de depuración esté configurada como GenerateDebugInformation (/DEBUG). (/PROFILE)

Atributo de subproceso CLR

Especifique explícitamente el atributo de subproceso para el punto de entrada del programa de Common Language Runtime (CLR).

Choices

  • Atributo de subproceso de MTA : aplica el atributo MTAThreadAttribute al punto de entrada del programa.
  • Atributo de subproceso STA : aplica el atributo STAThreadAttribute al punto de entrada del programa.
  • Atributo de subproceso predeterminado : igual que no especificar /CLRTHREADATTRIBUTE. Permite que CLR establezca el atributo de subproceso predeterminado.

Tipo de imagen de CLR

Establece el tipo (IJW, puro o seguro) de una imagen CLR.

Choices

  • Imagen de Force IJW
  • Force Pure IL Image
  • Force Safe IL Image
  • Tipo de imagen predeterminado

Archivo de clave

Especifica una clave o par de claves para firmar un ensamblado. (/KEYFILE:filename)

Contenedor de claves

Especifica un contenedor de claves para firmar un ensamblado. (/KEYCONTAINER:name)

Signo de retraso

Firma parcialmente un ensamblado. Utilice /DELAYSIGN si solo desea insertar la clave pública en el ensamblado. El valor predeterminado es /DELAYSIGN:NO.

Comprobación de código no administrado de CLR

/CLRUNMANAGEDCODECHECK especifica si el enlazador aplicará SuppressUnmanagedCodeSecurityAttribute a las llamadas P/Invoke generadas por el enlazador desde código administrado a DLL nativas.

Informes de errores

Permite proporcionar información interna del error del compilador (ICE) directamente al equipo de C++ Visual Studio.

Choices

  • PromptImmediately: solicita confirmación inmediatamente.
  • Poner en cola para el próximo inicio de sesión - Poner en cola para el próximo inicio de sesión.
  • Enviar informe de errores : enviar informe de errores.
  • Sin informe de errores: no hay ningún informe de errores.

SectionAlignment

La /ALIGN opción especifica la alineación de cada sección dentro del espacio de direcciones lineal del programa. El argumento number está en bytes y debe ser una potencia de dos.

Conservar el último código de error para las llamadas de PInvoke

/CLRSUPPORTLASTERROR, que está activado de forma predeterminada, conserva el último código de error de las funciones llamadas a través del mecanismo P/Invoke, que permite llamar a funciones nativas en archivos DLL desde el código compilado con /clr.

Choices

  • Habilitado : habilite /CLRSupportLastError.
  • Deshabilitado: deshabilite/CLRSupportLastError.
  • Solo archivos DLL del sistema : habilitar /CLRSupportLastError solo para archivos DLL del sistema.

Compatible con CET Shadow Stack

Especifica si una imagen ejecutable se marca como compatible con la pila de propiedad reemplazada de CET (Control-flow Enforcement Technology). (/CETCOMPAT)

La imagen tiene controladores de excepciones seguros

Cuando /SAFESEH se especifica, el enlazador solo generará una imagen si también puede generar una tabla de los controladores de excepciones seguros de la imagen. Esta tabla especifica al sistema operativo qué controladores de excepciones son válidos para la imagen.