Linker-Eigenschaftenseiten

Die folgenden Eigenschaften finden Sie unter Project>Properties>Configuration Properties>Linker. Weitere Informationen zum Linker finden Sie unter CL Invokes the Linker and Linker options.

Allgemeine Eigenschaftenseite

Ausgabedatei

Die /OUT Option setzt den Standardnamen und den Speicherort des Programms außer Kraft, das der Linker erstellt.

Fortschritt anzeigen

Druckt Linkerstatusmeldungen aus.

Optionen

  • Not Set – Keine Ausführlichkeit.
  • Alle Statusmeldungen anzeigen – Zeigt alle Statusmeldungen an.
  • Für durchsuchte Bibliotheken – Zeigt Statusmeldungen an, die nur die durchsuchten Bibliotheken angeben.
  • Informationen zur COMDAT-Faltung während der optimierten Verknüpfung - Zeigt Informationen zur COMDAT-Faltung während der optimierten Verknüpfung an.
  • Informationen zu Daten, die während der optimierten Verknüpfung entfernt wurden – Zeigt Informationen zu Funktionen und Daten an, die während der optimierten Verknüpfung entfernt wurden.
  • Informationen zu Modulen, die nicht mit SEH kompatibel sind – Zeigt Informationen zu Modulen an, die nicht mit der Behandlung sicherer Ausnahmen kompatibel sind.
  • Informationen zu Linkeraktivitäten im Zusammenhang mit verwaltetem Code – Zeigt Informationen zu Linkeraktivitäten im Zusammenhang mit verwaltetem Code an.

Version

Die /VERSION-Option weist den Linker an, eine Versionsnummer in den Header der Datei .exe oder .dll einzufügen. Verwenden Sie DUMPBIN /HEADERS, um das Bildversionsfeld von OPTIONAL HEADER VALUES anzuzeigen und die Wirkung von /VERSION zu sehen.

Inkrementelle Verknüpfung aktivieren

Aktiviert die inkrementelle Verknüpfung. (/INCREMENTAL, /INCREMENTAL:NO)

Gibt den Speicherort der inkrementellen Verknüpfungsdatenbankdatei an. (/ILK:[name])

Startbanner unterdrücken

Die /NOLOGO Option verhindert die Anzeige der Copyrightnachricht und versionsnummer.

Importbibliothek ignorieren

Diese Eigenschaft weist den Linker an, keine .lib Ausgabe zu verknüpfen, die aus diesem Build generiert wurde, mit einem abhängigen Projekt. Es ermöglicht dem Projektsystem, .dll-Dateien zu verarbeiten, die beim Erstellen keine .lib-Datei erzeugen. Wenn ein Projekt von einem anderen Projekt abhängt, das eine DLL erzeugt, verknüpft das Projektsystem automatisch die .lib von diesem untergeordneten Projekt erstellte Datei. Diese Eigenschaft ist in Projekten, die COM-DLLs oder DLLs erzeugen, die nur Ressourcen enthalten, möglicherweise unnötig, da diese DLLs keine sinnvollen Exporte enthalten. Wenn eine DLL keine Exporte hat, generiert der Linker keine .libDatei. Wenn keine Exportdatei .lib vorhanden ist, und das Projektsystem dem Linker an, eine Verknüpfung mit der fehlenden DLL zu erstellen, schlägt die Verknüpfung fehl. Verwenden Sie die Eigenschaft „Importbibliothek ignorieren“, um dieses Problem zu beheben. Wenn diese Eigenschaft auf "Ja" festgelegt ist, ignoriert das Projektsystem das Vorhandensein oder Fehlen der .lib Datei und stellt sicher, dass jedes Projekt, das von diesem Projekt abhängt, nicht mit der nicht vorhandenen .lib Datei verknüpft ist.

Informationen zum programmgesteuerten Zugriff auf diese Eigenschaft finden Sie unter IgnoreImportLibrary.

Ausgabe registrieren

Führt regsvr32.exe /s $(TargetPath) für die Buildausgabe aus, was nur auf .dll-Projekten gültig ist. Bei .exe Projekten wird diese Eigenschaft ignoriert. Um eine .exe Ausgabe zu registrieren, legen Sie ein Postbuild-Ereignis für die Konfiguration fest, um die benutzerdefinierte Registrierung durchzuführen, die für registrierte .exe Dateien immer erforderlich ist.

Informationen zum programmgesteuerten Zugriff auf diese Eigenschaft finden Sie unter RegisterOutput.

Benutzerbezogene Umleitung

Die Registrierung in Visual Studio wurde traditionell in HKEY_CLASSES_ROOT (HKCR) durchgeführt. Mit Windows Vista und höheren Betriebssystemen müssen Sie Visual Studio im Modus mit erhöhten Rechten ausführen, um auf HKCR zuzugreifen. Entwickler möchten die Software nicht immer im erhöhten Modus ausführen, müssen aber trotzdem mit der Registrierung arbeiten. Die Umleitung pro Benutzer ermöglicht Ihnen die Registrierung, ohne die Software im erhöhten Modus ausführen zu müssen.

Die Umleitung pro Benutzer erzwingt, dass alle Schreibzugriffe auf HKCR an HKEY_CURRENT_USER (HKCU) umgeleitet werden. Wenn die benutzerspezifische Umleitung deaktiviert ist, kann ein Projektbuild-Fehler PRJ0050 auftreten, wenn das Programm versucht, in HKCR zu schreiben.

Zusätzliche Bibliotheksverzeichnisse

Ermöglicht dem Benutzer das Überschreiben des umgebungsbedingten Bibliothekspfads. (/LIBPATH:folder)

Gibt an, ob die .lib Dateien verknüpft werden sollen, die von abhängigen Projekten erstellt werden. In der Regel möchten Sie eine Verknüpfung in den .lib Dateien herstellen, aber möglicherweise nicht für bestimmte DLLs.

Sie können eine .obj Datei auch angeben, indem Sie den Dateinamen und den relativen Pfad angeben, ..\..\MyLibProject\MyObjFile.objz. B. . Wenn der Quellcode für die .obj-Datei eine #include für einen vorkompilierten Header aufweist, z. B. pch.h, dann befindet sich die pch.obj-Datei im selben Ordner wie MyObjFile.obj. Sie müssen pch.obj auch als zusätzliche Abhängigkeit hinzufügen.

Bibliotheksabhängigkeits-Eingaben verwenden

Gibt an, ob die Eingaben in das Bibliotheksprogrammtool verwendet werden wollen, oder ob die Bibliotheksdatei selbst verwendet wird, wenn Bibliothekausgaben von Projektabhängigkeiten als Link eingebunden werden. Wenn ein abhängiges Projekt in einem großen Projekt eine .lib Datei erzeugt, wird die inkrementelle Verknüpfung deaktiviert. Wenn es viele abhängige Projekte gibt, die Dateien produzieren .lib , kann das Erstellen der Anwendung sehr lange dauern. Wenn diese Eigenschaft auf Ja festgelegt ist, bindet das Projektsystem die .lib-Dateien für die von abhängigen Projekten erzeugten .obj-Dateien ein und ermöglicht inkrementelles Linken.

Informationen zum Zugriff auf die Eigenschaftenseite Allgemein des Linkers finden Sie unter Festlegen von Compiler- und Buildeigenschaften.

Gibt an, ob der Verknüpfer eine Statusanzeige anzeigen soll, die anzeigt, welcher Prozentsatz der Verknüpfung abgeschlossen ist. Standardmäßig zeigt der Linker diese Statusinformationen nicht an. (/LTCG:STATUS|LTCG:NOSTATUS)

DLL-Bindung verhindern

/ALLOWBIND:NO setzt ein Bit im Header einer DLL, das Bind.exe anzeigt, dass die Bindung des Images nicht zulässig ist. Möglicherweise möchten Sie nicht, dass eine DLL gebunden wird, wenn sie digital signiert wurde. (Durch die Bindung wird die Signatur ungültig.)

Linker-Warnungen als Fehler behandeln

Wenn diese Eigenschaft auf Ja (/WX) festgelegt ist, wird keine Ausgabedatei generiert, wenn der Linker eine Warnung generiert.

Dateiausgabe erzwingen

Die /FORCE-Option weist den Linker an, eine .exe-Datei oder DLL zu erstellen, auch wenn auf ein Symbol verwiesen wird, das nicht definiert ist (UNRESOLVED) oder mehrfach definiert ist (MULTIPLE). Möglicherweise wird eine ungültige .exe Datei erstellt.

Optionen

  • Aktiviert - /FORCE ohne Argumente bedeutet sowohl /FORCE:MULTIPLE als auch /FORCE:UNRESOLVED.
  • Nur bei mehrfach definiertem Symbol - Verwenden Sie /FORCE:MULTIPLE, um eine Ausgabedatei zu erstellen, auch wenn LINK mehr als eine Definition für ein Symbol findet.
  • Nur bei undefiniertem Symbol – Verwenden Sie /FORCE:UNRESOLVED, um eine Ausgabedatei zu erstellen, unabhängig davon, ob LINK ein undefiniertes Symbol findet. /FORCE:UNRESOLVED wird ignoriert, wenn das Einstiegspunktsymbol nicht aufgelöst ist.

Erstellen von Hot Patchable Image

Bereitet ein Image für Hotpatching vor.

Optionen

  • Aktiviert – Bereitet ein Image auf das Hot Patching vor.
  • Nur x86-Abbild – Bereitet ein x86-Abbild für Hot-Patching vor.
  • Nur X64-Bild – Bereitet ein x64-Bild für das Hot Patching vor.
  • Itanium Image Only – Bereitet ein Itanium-Bild auf das Hot Patching vor.

Abschnittsattribute festlegen

Die /SECTION Option ändert die Attribute eines Abschnitts, wobei die Attribute überschrieben werden, die beim Kompilieren der .obj Datei für den Abschnitt festgelegt wurden.

Eigenschaftenseite für die Eingabe

Zusätzliche Abhängigkeiten

Gibt zusätzliche Abhängigkeitselemente an, die der Befehlszeile des Linkers hinzugefügt werden sollen, z. B. kernel32.lib.

Alle Standardbibliotheken ignorieren

Die /NODEFAULTLIB Option weist dem Linker an, eine oder mehrere Standardbibliotheken aus der Liste der Bibliotheken zu entfernen, die beim Auflösen externer Verweise durchsucht werden.

Bestimmte Standardbibliotheken ignorieren

Gibt einen oder mehrere Namen der zu ignorierenden Standardbibliotheken an. Trennen Sie mehrere Bibliotheken durch Semikolons. (/NODEFAULTLIB:[name, name, ...])

Moduldefinitionsdatei

Die /DEF Option übergibt eine Moduldefinitionsdatei (.def) an den Linker. Es kann nur eine .def Datei für LINK angegeben werden.

Modul zur Assembly hinzufügen

Mit der /ASSEMBLYMODULE Option können Sie einer Assembly einen Modulverweis hinzufügen. Typinformationen im Modul sind für das Assemblyprogramm, das den Modulverweis hinzugefügt hat, nicht verfügbar. Typinformationen im Modul stehen jedoch allen Programmen zur Verfügung, die auf die Assembly verweisen.

Verwaltete Ressourcendatei einbetten

/ASSEMBLYRESOURCE Bettet eine Ressourcendatei in die Ausgabedatei ein.

Symbolverweise erzwingen

Die /INCLUDE Option weist den Linker an, der Symboltabelle ein angegebenes Symbol hinzuzufügen.

Geladene DLLs verzögern

Die /DELAYLOAD Option verursacht verzögertes Laden von DLLs. Der DLL-Name gibt eine DLL an, um das Laden zu verzögern.

Die Option /ASSEMBLYLINKRESOURCE erstellt einen Link zu einer .NET Framework-Ressource in der Ausgabedatei. Der Verknüpfer platziert die Ressourcendatei nicht in der Ausgabedatei.

Eigenschaftenseite der Manifestdatei

Manifest generieren

/MANIFEST Gibt an, dass der Linker eine parallele Manifestdatei erstellen soll.

Manifestdatei

/MANIFESTFILE Mit dieser Option können Sie den Standardnamen der Manifestdatei ändern. Der Standardname der Manifestdatei ist der Dateiname mit angehängtem .manifest.

Zusätzliche Manifestabhängigkeiten

/MANIFESTDEPENDENCY Mit dieser Option können Sie Attribute angeben, die im Abhängigkeitsbereich der Manifestdatei platziert werden.

Isolation zulassen

Gibt das Verhalten bei der Manifestsuche an. (/ALLOWISOLATION:NO)

Benutzerkontensteuerung (UAC) aktivieren

Gibt an, ob die Benutzerkontensteuerung aktiviert ist. (/MANIFESTUAC, /MANIFESTUAC:NO)

UAC-Ausführungsebene

Gibt die angeforderte Ausführungsebene für die Anwendung an, wenn sie mit der Benutzerkontensteuerung ausgeführt wird. (/MANIFESTUAC:level=[value])

Optionen

  • asInvoker – UAC-Ausführungsebene: als Aufrufer.
  • highestAvailable - UAC-Ausführungsebene: höchste verfügbare.
  • requireAdministrator – UAC-Ausführungsebene: Administrator anfordern.

UAC-Umgehungs-UI-Schutz

Gibt an, ob die Schutzebenen der Benutzeroberfläche für andere Fenster auf dem Desktop umgangen werden sollen. Legen Sie diese Eigenschaft nur für Barrierefreiheitsanwendungen auf "Ja " fest. (/MANIFESTUAC:uiAccess=[true | false])

Eigenschaftenseite für das Debuggen

Generieren von Debuginformationen

Diese Option ermöglicht das Erstellen von Debuginformationen für die .exe Datei oder die DLL.

Optionen

  • Nein – Erzeugt keine Debuginformationen.
  • Debuginformationen generieren – Erstellen Sie eine vollständige Programmdatenbank (PDB), die ideal für die Verteilung an Microsoft Symbolserver geeignet ist.
  • Generieren von Debuginformationen, die für schnellere Links optimiert sind – Erzeugt einen PDB, der ideal für einen schnellen Edit-Link-Debug-Zyklus geeignet ist.
  • Debuginformationen generieren, die für das Teilen und Veröffentlichen optimiert sind - Erstellt eine PDB-Datei, die ideal für einen gemeinsamen Bearbeiten-Verknüpfen-Debuggen-Zyklus ist.

Programmdatenbankdatei erstellen

Standardmäßig erstellt der Linker, wenn /DEBUG angegeben wird, eine PDB-Datei, die Debuginformationen enthält. Der Standarddateiname für den PDB weist den Basisnamen des Programms und die Erweiterung .pdbauf.

Private Symbole entfernen

Die /PDBSTRIPPED Option erstellt eine zweite PDB-Datei, wenn Sie Ihr Programmimage mit einer der Compiler- oder Linkeroptionen erstellen, die eine PDB-Datei (/DEBUG, , /Z7, /Zdoder /Zi) generieren.

Mapping-Datei generieren

Die /MAP-Option weist den Linker an, eine Map-Datei zu erstellen.

Name der Zuordnungsdatei

Ein vom Benutzer angegebener Name für die Mapfile. Er ersetzt den Standardnamen.

Map-Exporte

Die /MAPINFO Option weist den Linker an, die angegebenen Informationen in eine Mapfile einzuschließen, die erstellt wird, wenn Sie die /MAP Option angeben. EXPORTS weist den Linker an, exportierte Funktionen einzuschließen.

Debugfähige Assembly

/ASSEMBLYDEBUG gibt das DebuggableAttribute Attribut mit Debuginformationsnachverfolgung aus und deaktiviert JIT-Optimierungen.

Unterstützen des dynamischen Debuggens von C++

(Vorschau) Setzen Sie das Linker-Flag /DYNAMICDEOPT, um dynamisches C++-Debugging zu aktivieren. Setzen Sie nicht optimierte Haltepunkte, und führen Sie mit der bedarfsgesteuerten Funktionsdeoptimierung an beliebiger Stelle einen Schritt aus. Verwenden Sie diesen Modus zum Debuggen von optimiertem Code.

Systemeigenschaftsseite

Subsystem

Die /SUBSYSTEM Option teilt dem Betriebssystem mit, wie die .exe Datei ausgeführt wird. Die Wahl des Subsystems hat Einfluss auf das Einstiegspunktsymbol bzw. die Einstiegspunktfunktion, das/die vom Verknüpfer ausgewählt wird.

Optionen

  • Nicht festgelegt - Kein Subsystem festgelegt.
  • Konsole – Win32-Zeichenmodusanwendung. Konsolenanwendungen erhalten eine Konsole vom Betriebssystem. Wenn main oder wmain definiert ist, CONSOLE ist die Standardeinstellung.
  • Windows – Die Anwendung erfordert keine Konsole, wahrscheinlich weil sie eine eigene windows für die Interaktion mit dem Benutzer erstellt. Wenn WinMain oder wWinMain definiert ist, WINDOWS ist die Standardeinstellung.
  • Native – Gerätetreiber für Windows NT. Wenn /DRIVER:WDM angegeben ist, ist NATIVE standardmäßig festgelegt.
  • EFI-Anwendung – EFI-Anwendung.
  • EFI-Startdiensttreiber – EFI-Startdiensttreiber.
  • EFI ROM - EFI ROM.
  • EFI-Runtime – EFI-Runtime.
  • POSIX - Anwendung, die mit dem POSIX-Subsystem in Windows NT ausgeführt wird.

Mindestens erforderliche Version

Geben Sie die mindestens erforderliche Version des Subsystems an. Geben Sie Dezimalzahlen im Bereich 0 bis 65.535 ein.

Heap-Reservegröße

Gibt die Gesamtgröße der Heap-Zuweisung im virtuellen Speicher an. Der Standardwert ist 1 MB. (/HEAP:reserve)

Heap Commit-Größe

Gibt die Gesamtgröße der Heap-Zuordnung im physischen Speicher an. Der Standardwert ist 4 KB. (/HEAP:reserve,commit)

Stapelreservierungsgröße

Gibt die Gesamtgröße der Stapelallokation im virtuellen Speicher an. Der Standardwert ist 1 MB. (/STACK:reserve)

Stack-Commit-Größe

Gibt die Gesamtgröße der Stapelzuweisung im physischen Speicher an. Der Standardwert ist 4 KB. (/STACK:reserve,commit)

Große Adressen aktivieren

Die /LARGEADDRESSAWARE Option teilt dem Linker mit, dass die Anwendung Adressen verarbeiten kann, die größer als 2 Gigabyte sind. Standardmäßig ist /LARGEADDRESSAWARE:NO aktiviert, wenn /LARGEADDRESSAWARE in der Linker-Befehlszeile nicht anderweitig angegeben ist.

Terminal Server (Terminalserver)

Die /TSAWARE Option legt eine Kennzeichnung im Feld in der IMAGE_OPTIONAL_HEADERDllCharacteristics optionalen Kopfzeile des Programmbilds fest. Wenn dieses Flag festgelegt ist, wird der Terminalserver keine bestimmten Änderungen an der Anwendung vornehmen.

Swap Run From CD

Die /SWAPRUN Option weist das Betriebssystem an, zuerst die Linkerausgabe in eine Auslagerungsdatei zu kopieren und dann das Image von dort aus auszuführen. Diese Option ist ein Windows NT 4.0- und höher-Feature. Wenn CD angegeben wird, kopiert das Betriebssystem das Abbild von einem Wechseldatenträger in eine Seitendatei und lädt es anschließend.

Swap Run From Network

Die /SWAPRUN-Option veranlasst das Betriebssystem, die Linkerausgabe zunächst in eine Auslagerungsdatei zu kopieren und das Abbild dann von dort auszuführen. Diese Option ist ein Windows NT 4.0- und höher-Feature. Wenn NET angegeben, kopiert das Betriebssystem zuerst das Binäre Image aus dem Netzwerk in eine Auslagerungsdatei und lädt es von dort aus. Diese Option ist nützlich für die Ausführung von Anwendungen über das Netzwerk.

Treiber

Verwenden Sie die Linker-Option /DRIVER, um einen Windows NT Kernelmodustreiber zu erstellen.

Optionen

  • Not Set - Standardtreibereinstellung.
  • Treiber - Treiber.
  • UP Only - /DRIVER:UPONLY bewirkt, dass der Linker das IMAGE_FILE_UP_SYSTEM_ONLY-Bit zu den Eigenschaften im Header der Ausgabedatei hinzufügt, um anzugeben, dass es sich um einen Uniprozessor-(UP)-Treiber handelt. Das Betriebssystem lehnt das Laden eines UP-Treibers auf einem Mp-System (Multiprocessor) ab.
  • WDM - /DRIVER:WDM bewirkt, dass der Linker das IMAGE_DLLCHARACTERISTICS_WDM_DRIVER Bit im Feld der optionalen Kopfzeile DllCharacteristics festlegen kann.

Eigenschaftenseite für die Optimierung

Verweise

/OPT:REF entfernt Funktionen und/oder Daten, auf die nie verwiesen wird. /OPT:NOREF hält Funktionen und/oder Daten, auf die nie verwiesen wird.

COMDAT-Faltung aktivieren

Verwenden Sie /OPT:ICF[=iterations], um eine identische COMDAT-Faltung durchzuführen.

Funktionsreihenfolge

Die /ORDER Option weist LINK an, Ihr Programm zu optimieren, indem bestimmte COMDATs in einer vordefinierten Reihenfolge in das Bild eingefügt werden. LINK platziert die Funktionen in der angegebenen Reihenfolge innerhalb jedes Abschnitts im Bild.

Profilgeführte Datenbank

Geben Sie die .pgd Datei für profilgeführte Optimierungen an. (/PGD)

Gibt Link-Zeitcodegenerierung an. (/LTCG)

Optionen

  • Standard – Standard-LTCG-Einstellung.
  • Verwenden Sie die Generierung von Zeitcode für schnelle Verknüpfungen – Verwenden Sie die Zeitcodegenerierung mit /FASTGENPROFILE.
  • Verwenden Sie die Linkzeitcodegenerierung - Verwenden Sie die Linkzeitcodegenerierung.
  • Profilgesteuerte Optimierung – Instrumentieren – Verwenden Sie profilgesteuerte Optimierung mit :PGINSTRUMENT.
  • Profilgeführte Optimierung – Optimierung – Gibt an, dass der Linker die Profildaten verwenden soll, die nach dem Ausführen der instrumentierten Binärdatei erstellt wurden, um ein optimiertes Bild zu erstellen.
  • Profilgeführte Optimierung – Aktualisierung – Ermöglicht das Hinzufügen oder Ändern einer Liste von Eingabedateien gegenüber dem, was in der :PGINSTRUMENT-Phase angegeben wurde, und verfolgt diese Änderungen.

Gibt den Dateispeicherort an .iobj . (/LTCGOUT:[name])

Eingebettete IDL-Eigenschaftsseite

MIDL-Befehle

Optionen für MIDL-Befehlszeile festlegen. (/MIDL:@responsefile)

Eingebettete IDL ignorieren

Die /IGNOREIDL Option gibt an, dass alle IDL-Attribute im Quellcode nicht in eine .idl Datei verarbeitet werden sollen.

Zusammengeführter IDL-Basisdateiname

Die /IDLOUT Option gibt den Namen und die Erweiterung der .idl Datei an.

Typbibliothek

Die /TLBOUT Option gibt den Namen und die Erweiterung der .tlb Datei an.

TypeLib-Ressourcen-ID

Ermöglicht ihnen die Angabe der Ressourcen-ID der vom Linker generierten Typbibliothek. (/TLBID:id)

Windows Metadateneigenschaftsseite

Generieren Windows Metadaten

Aktiviert oder deaktiviert die Generierung von Windows Metadaten.

Optionen

  • Yes – Aktivieren der Generierung von Windows Metadatendateien.
  • No – Deaktivieren Sie die Generierung von Windows Metadatendateien.

Windows Metadatendatei

Der /WINMDFILE Optionsschalter.

Windows Metadatenschlüsseldatei

Geben Sie ein Schlüssel- oder Schlüsselpaar an, um die Windows Metadaten zu signieren. (/WINMDKEYFILE:filename)

Windows Metadatenschlüsselcontainer

Geben Sie einen Schlüsselcontainer an, um die Windows Metadaten zu signieren. (/WINMDKEYCONTAINER:name)

Windows-Metadatenverzögerungszeichen

Signieren Sie die Windows-Metadaten teilweise. Verwenden Sie /WINMDDELAYSIGN, wenn Sie den öffentlichen Schlüssel nur in den Windows Metadaten platzieren möchten. Der Standardwert lautet /WINMDDELAYSIGN:NO.

Erweiterte Eigenschaftenseite

Eingangspunkt

Die /ENTRY Option gibt eine Einstiegspunktfunktion als Startadresse für eine .exe Datei oder DLL an.

Kein Einstiegspunkt

Die Option /NOENTRY ist zum Erstellen einer DLL erforderlich, die nur Ressourcen enthält. Verwenden Sie diese Option, um zu verhindern, dass LINK einen Verweis _main mit der DLL verknüpft.

Prüfsumme festlegen

Die /RELEASE Option legt die Prüfsumme in der Kopfzeile einer .exe Datei fest.

Basisadresse

Legt eine Basisadresse für das Programm fest. (/BASE:{address[,size] | @filename,key})

Zufällige Basisadresse

Zufällige Basisadresse. (/DYNAMICBASE[:NO])

Feste Basisadresse

Erstellt ein Programm, das nur an seiner bevorzugten Basisadresse geladen werden kann. (/FIXED[:NO])

Datenausführungsverhinderung (DEP, Data Execution Prevention)

Kennzeichnet eine ausführbare Datei, die laut Tests als mit der Windows-Funktion zur Datenausführungsverhinderung kompatibel ist. (/NXCOMPAT[:NO])

Deaktivieren der Assemblygenerierung

Die /NOASSEMBLY Option weist den Linker an, ein Image für die aktuelle Ausgabedatei ohne .NET Framework-Assembly zu erstellen.

Entladen einer verzögert geladenen DLL

Der UNLOAD Bezeichner gibt an, dass die Hilfsfunktion für verzögertes Laden das explizite Entladen der DLL unterstützt. (/DELAY:UNLOAD)

Nobind einer verzögert geladenen DLL

Der NOBIND-Qualifizierer weist den Linker an, keine bindbare Importadresstabelle (IAT) in das endgültige Image einzuschließen. Das Standardverhalten besteht darin, die bindbare IAT für verzögert geladene DLLs zu erstellen. (/DELAY:NOBIND)

Bibliothek importieren

Überschreibt den Standardnamen für die Importbibliothek. (/IMPLIB:filename)

Abschnitte zusammenführen

Die /MERGE Option kombiniert den ersten Abschnitt mit dem zweiten Abschnitt und gibt dem resultierenden Abschnitt den Namen des zweiten Abschnitts. Führt beispielsweise /merge:.rdata=.text den .rdata Abschnitt mit dem .text Abschnitt zusammen und benennt den kombinierten Abschnitt .text.

Zielcomputer

Die /MACHINE Option gibt die Zielplattform für das Programm an.

Optionen

  • Nicht festgelegt
  • MachineARM
  • MachineARM64
  • MachineARM64EC
  • MachineARM64X
  • MachineEBC
  • MachineX64
  • MachineX86

Zielcomputer

Die /MACHINE Option gibt die Zielplattform für das Programm an.

Optionen

  • Nicht festgelegt
  • MachineARM
  • MachineARM64
  • MachineEBC
  • MachineIA64
  • MachineMIPS
  • MachineMIPS16
  • MachineMIPSFPU
  • MachineMIPSFPU16
  • MachineSH4
  • MachineTHUMB
  • MachineX64
  • MachineX86

Profil

Erstellt eine Ausgabedatei, die mit dem Leistungstoolprofiler verwendet werden kann. Erfordert, dass die Generate Debug Info-Eigenschaft auf GenerateDebugInformation (/DEBUG) festgelegt ist. (/PROFILE)

CLR Threadattribut

Geben Sie explizit das Threading-Attribut für den Einstiegspunkt Ihres Common Language Runtime (CLR)-Programms an.

Optionen

  • MTA-Threadingattribut – Wendet das MTAThreadAttribute-Attribut auf den Einstiegspunkt Ihres Programms an.
  • STA-Threadingattribut – Wendet das STAThreadAttribute-Attribut auf den Einstiegspunkt Ihres Programms an.
  • Standard-Attribut für Threading – Dasselbe, als würde /CLRTHREADATTRIBUTE nicht angegeben. Ermöglicht der CLR, das Standardthreading-Attribut festzulegen.

CLR-Bildtyp

Legt den Typ (IJW, rein oder sicher) eines CLR-Images fest.

Optionen

  • IJW-Bild erzwingen
  • Reines IL-Image erzwingen
  • Sicheres IL-Image erzwingen
  • Standardbildtyp

Schlüsseldatei

Zum Signieren einer Assembly den Schlüssel oder das Schlüsselpaar festlegen. (/KEYFILE:filename)

Schlüsselcontainer

Gibt einen Schlüsselcontainer zum Signieren einer Assembly an. (/KEYCONTAINER:name)

Verzögerungszeichen

Signieren Sie teilweise eine Assembly. Verwenden Sie /DELAYSIGN, wenn Sie den öffentlichen Schlüssel nur in der Assembly platzieren möchten. Der Standardwert lautet /DELAYSIGN:NO.

CLR:Nicht verwalteten Code überprüfen

/CLRUNMANAGEDCODECHECK gibt an, ob der Linker SuppressUnmanagedCodeSecurityAttribute auf linkergenerierte P/Invoke-Aufrufe aus verwaltetem Code in native DLLs anwendet.

Fehlerberichterstellung

Ermöglicht Es Ihnen, interne Compilerfehlerinformationen (ICE) direkt für das Visual Studio C++-Team bereitzustellen.

Optionen

  • PromptImmediately – Sofortaufforderung.
  • Warteschlange für nächste Anmeldung – Warteschlange für die nächste Anmeldung.
  • Fehlerbericht senden – Fehlerbericht senden.
  • Kein Fehlerbericht – Kein Fehlerbericht.

Abschnittsausrichtung

Die /ALIGN Option gibt die Ausrichtung jedes Abschnitts innerhalb des linearen Adressraums des Programms an. Das Zahlenargument ist in Byte und muss eine Potenz von zwei sein.

Letzten Fehlercode für PInvoke-Aufrufe beibehalten

/CLRSUPPORTLASTERROR, das standardmäßig aktiviert ist, bewahrt den letzten Fehlercode von Funktionen, die über den P/Invoke-Mechanismus aufgerufen werden, wodurch Sie native Funktionen in DLLs aus mit /clr kompiliertem Code aufrufen können.

Optionen

  • Aktiviert - /CLRSupportLastError aktivieren.
  • Deaktiviert - /CLRSupportLastError deaktivieren.
  • Nur System-DLLs – Nur für System-DLLs aktivieren /CLRSupportLastError .

CET Shadow Stack-kompatibel

Gibt an, ob ein ausführbares Bild als kompatibel mit dem CET-Schattenstapel (Control-Flow Enforcement Technology) gekennzeichnet werden soll. (/CETCOMPAT)

Image weist sichere Ausnahmehandler auf

Wenn /SAFESEH angegeben wird, erzeugt der Linker nur dann ein Abbild, wenn er auch eine Tabelle der sicheren Ausnahmebehandler des Abbilds erzeugen kann. In dieser Tabelle ist für das Betriebssystem angegeben, welche Ausnahmehandler für das Image gültig sind.