Opcje konsolidatora
LINK.exe łączy pliki obiektów Common Object File Format (COFF) i biblioteki w celu utworzenia pliku wykonywalnego (EXE) lub biblioteki łącza dynamicznego (DLL).
W poniższej tabeli wymieniono opcje LINK.exe. Aby uzyskać więcej informacji na temat linku, zobacz:
- Opcje LINK kontrolowane przez kompilator
- Pliki wejściowe LINK
- Dane wyjściowe linku
- Słowa zastrzeżone
W wierszu polecenia opcje konsolidatora nie są uwzględniane wielkości liter; na przykład i /base
/BASE
oznaczają to samo. Aby uzyskać szczegółowe informacje na temat określania każdej opcji w wierszu polecenia lub w programie Visual Studio, zobacz dokumentację dotyczącą tej opcji.
Możesz użyć comment
pragma, aby określić niektóre opcje konsolidatora.
Opcje konsolidatora wymienione alfabetycznie
Opcja | Purpose |
---|---|
@ |
Określa plik odpowiedzi. |
/ALIGN |
Określa wyrównanie każdej sekcji. |
/ALLOWBIND |
Określa, że nie można powiązać biblioteki DLL. |
/ALLOWISOLATION |
Określa zachowanie wyszukiwania manifestu. |
/APPCONTAINER |
Określa, czy aplikacja musi działać w środowisku przetwarzania appcontainer. |
/ARM64XFUNCTIONPADMINX64 |
Określa minimalną liczbę bajtów wypełnienia między funkcjami x64 na obrazach ARM64X.17.8 |
/ASSEMBLYDEBUG |
Dodaje element DebuggableAttribute do obrazu zarządzanego. |
/ASSEMBLYLINKRESOURCE |
Tworzy link do zarządzanego zasobu. |
/ASSEMBLYMODULE |
Określa, że moduł języka microsoft intermediate language (MSIL) powinien zostać zaimportowany do zestawu. |
/ASSEMBLYRESOURCE |
Osadza plik zarządzanego zasobu w zestawie. |
/BASE |
Ustawia adres podstawowy programu. |
/CETCOMPAT |
Oznacza dane binarne jako zgodne ze stosem CET Shadow Stack. |
/CGTHREADS |
Ustawia liczbę wątków cl.exe do użycia na potrzeby optymalizacji i generowania kodu po określeniu generowania kodu w czasie połączenia. |
/CLRIMAGETYPE |
Ustawia typ (IJW, czysty lub bezpieczny) obrazu CLR. |
/CLRSUPPORTLASTERROR |
Zachowuje ostatni kod błędu funkcji wywoływanych za pomocą mechanizmu P/Invoke. |
/CLRTHREADATTRIBUTE |
Określa atrybut wątkowy, który ma być stosowany do punktu wejścia programu CLR. |
/CLRUNMANAGEDCODECHECK |
Określa, czy konsolidator stosuje SuppressUnmanagedCodeSecurity atrybut do wycinków P/Invoke generowanych przez konsolidatora, które wywołują z kodu zarządzanego do natywnych bibliotek DLL. |
/DEBUG |
Tworzy informacje o debugowaniu. |
/DEBUGTYPE |
Określa, które dane mają być uwzględniane w informacjach debugowania. |
/DEF |
Przekazuje plik definicji modułu (.def) do konsolidatora. |
/DEFAULTLIB |
Wyszukuje określoną bibliotekę, gdy odwołania zewnętrzne są rozpoznawane. |
/DELAY |
Steruje opóźnionym ładowaniem bibliotek DLL. |
/DELAYLOAD |
Powoduje opóźnione ładowanie określonej biblioteki DLL. |
/DELAYSIGN |
Częściowo podpisuje zestaw. |
/DEPENDENTLOADFLAG |
Ustawia flagi domyślne na zależne obciążenia bibliotek DLL. |
/DLL |
Tworzy bibliotekę DLL. |
/DRIVER |
Tworzy sterownik trybu jądra. |
/DYNAMICBASE |
Określa, czy wygenerować obraz wykonywalny, który jest ponownie oparty na czasie ładowania przy użyciu funkcji randomizacji układu przestrzeni adresowej (ASLR). |
/ENTRY |
Ustawia adres początkowy. |
/ERRORREPORT |
Przestarzałe. Raportowanie błędów jest kontrolowane przez ustawienia Raportowanie błędów systemu Windows (WER). |
/EXPORT |
Eksportuje funkcję. |
/FILEALIGN |
Wyrównuje sekcje w pliku wyjściowym na wielokrotności określonej wartości. |
/FIXED |
Tworzy program, który można załadować tylko pod preferowanym adresem podstawowym. |
/FORCE |
Wymusza połączenie, aby zakończyć nawet z nierozwiązanymi symbolami lub symbolami zdefiniowanymi więcej niż raz. |
/FUNCTIONPADMIN |
Tworzy obraz, który może być poprawiony na gorąco. |
/GENPROFILE , /FASTGENPROFILE |
Obie te opcje określają generowanie .pgd pliku przez konsolidator w celu obsługi optymalizacji opartej na profilu (PGO). /GENPROFILE i /FASTGENPROFILE używają różnych parametrów domyślnych. |
/GUARD |
Włącza ochronę funkcji Control Flow Guard. |
/HEAP |
Ustawia rozmiar sterty w bajtach. |
/HIGHENTROPYVA |
Określa obsługę 64-bitowego układu przestrzeni adresowej o wysokiej entropii (ASLR). |
/IDLOUT |
Określa nazwę .idl pliku i inne pliki wyjściowe MIDL. |
/IGNORE |
Pomija dane wyjściowe określonych ostrzeżeń konsolidatora. |
/IGNOREIDL |
Zapobiega przetwarzaniu informacji o atrybutach w .idl pliku. |
/ILK |
Zastępuje domyślną nazwę pliku bazy danych przyrostowej. |
/IMPLIB |
Zastępuje domyślną nazwę biblioteki importu. |
/INCLUDE |
Wymusza odwołania do symboli. |
/INCREMENTAL |
Steruje łączeniem przyrostowym. |
/INFERASANLIBS |
Używa wywnioskowanych bibliotek sanitizer. |
/INTEGRITYCHECK |
Określa, że moduł wymaga sprawdzenia podpisu w czasie ładowania. |
/KERNEL |
Utwórz plik binarny trybu jądra. |
/KEYCONTAINER |
Określa kontener kluczy do podpisania zestawu. |
/KEYFILE |
Określa parę kluczy lub kluczy, aby podpisać zestaw. |
/LARGEADDRESSAWARE |
Informuje kompilator, że aplikacja obsługuje adresy większe niż 2 gigabajty |
/LIBPATH |
Określa ścieżkę do wyszukiwania przed ścieżką biblioteki środowiskowej. |
/LINKREPRO |
Określa ścieżkę do generowania artefaktów ponownego odtworzenia linku w programie. |
/LINKREPROFULLPATHRSP |
Generuje plik odpowiedzi zawierający ścieżki bezwzględne do wszystkich plików, które konsolidator wziął jako dane wejściowe. |
/LINKREPROTARGET |
Generuje odtworzenie linku tylko podczas tworzenia określonego obiektu docelowego.16.1 |
/LTCG |
Określa generowanie kodu w czasie połączenia. |
/MACHINE |
Określa platformę docelową. |
/MANIFEST |
Tworzy plik manifestu równoległego i opcjonalnie osadza go w pliku binarnym. |
/MANIFESTDEPENDENCY |
Określa sekcję <dependentAssembly> w pliku manifestu. |
/MANIFESTFILE |
Zmienia domyślną nazwę pliku manifestu. |
/MANIFESTINPUT |
Określa plik wejściowy manifestu konsolidatora do przetwarzania i osadzania w pliku binarnym. Tej opcji można użyć wiele razy, aby określić więcej niż jeden plik wejściowy manifestu. |
/MANIFESTUAC |
Określa, czy informacje kontroli konta użytkownika (UAC) są osadzone w manifeście programu. |
/MAP |
Tworzy plik mapowania. |
/MAPINFO |
Zawiera określone informacje w pliku map. |
/MERGE |
Łączy sekcje. |
/MIDL |
Określa opcje wiersza polecenia MIDL. |
/NATVIS |
Dodaje wizualizatory debugera z pliku Natvis do bazy danych programu (PDB). |
/NOASSEMBLY |
Pomija tworzenie zestawu .NET Framework. |
/NODEFAULTLIB |
Ignoruje wszystkie (lub określone) biblioteki domyślne, gdy odwołania zewnętrzne są rozpoznawane. |
/NOENTRY |
Tworzy bibliotekę DLL tylko dla zasobów. |
/NOFUNCTIONPADSECTION |
Wyłącza dopełnianie funkcji dla funkcji w określonej sekcji.17.8 |
/NOLOGO |
Pomija baner startowy. |
/NXCOMPAT |
Oznacza plik wykonywalny jako zweryfikowany, aby był zgodny z funkcją zapobiegania wykonywaniu danych systemu Windows. |
/OPT |
Steruje optymalizacjami LINK. |
/ORDER |
Umieszcza comDATs na obrazie w wstępnie określonej kolejności. |
/OUT |
Określa nazwę pliku wyjściowego. |
/PDB |
Tworzy plik PDB. |
/PDBALTPATH |
Używa alternatywnej lokalizacji do zapisania pliku PDB. |
/PDBSTRIPPED |
Tworzy plik PDB, który nie ma prywatnych symboli. |
/PGD |
Określa .pgd plik optymalizacji z przewodnikiem profilu. |
/POGOSAFEMODE |
Przestarzałe tworzy bezpieczną wątkowo kompilację instrumentowaną PGO. |
/PROFILE |
Tworzy plik wyjściowy, który może być używany z profilerem narzędzi wydajności. |
/RELEASE |
Ustawia sumę kontrolną w nagłówku .exe . |
/SAFESEH |
Określa, że obraz będzie zawierać tabelę bezpiecznych procedur obsługi wyjątków. |
/SECTION |
Zastępuje atrybuty sekcji. |
/SOURCELINK |
Określa plik SourceLink, który ma zostać dodany do pliku PDB. |
/STACK |
Ustawia rozmiar stosu w bajtach. |
/STUB |
Dołącza program wycinkowy MS-DOS do programu Win32. |
/SUBSYSTEM |
Informuje system operacyjny, jak uruchomić .exe plik. |
/SWAPRUN |
Informuje system operacyjny o skopiowaniu danych wyjściowych konsolidatora do pliku zamiany przed jego uruchomieniem. |
/TIME |
Przekazywanie informacji o chronometrażu konsolidatora danych wyjściowych. |
/TLBID |
Określa identyfikator zasobu biblioteki typów generowanych przez konsolidatora. |
/TLBOUT |
Określa nazwę .tlb pliku i inne pliki wyjściowe MIDL. |
/TSAWARE |
Tworzy aplikację przeznaczoną specjalnie do uruchamiania w obszarze Serwer terminali. |
/USEPROFILE |
Używa danych trenowania optymalizacji opartej na profilu w celu utworzenia zoptymalizowanego obrazu. |
/VERBOSE |
Drukuje komunikaty postępu konsolidatora. |
/VERSION |
Przypisuje numer wersji. |
/WHOLEARCHIVE |
Zawiera każdy plik obiektu z określonych bibliotek statycznych. |
/WINMD |
Umożliwia generowanie pliku metadanych środowisko wykonawcze systemu Windows. |
/WINMDFILE |
Określa nazwę pliku dla pliku wyjściowego środowisko wykonawcze systemu Windows Metadata (winmd), który jest generowany przez opcję konsolidatora/WINMD . |
/WINMDKEYFILE |
Określa parę kluczy lub kluczy, aby podpisać plik metadanych środowisko wykonawcze systemu Windows. |
/WINMDKEYCONTAINER |
Określa kontener kluczy do podpisania pliku metadanych systemu Windows. |
/WINMDDELAYSIGN |
Częściowo podpisuje plik metadanych środowisko wykonawcze systemu Windows (.winmd ), umieszczając klucz publiczny w pliku winmd. |
/WX |
Traktuje ostrzeżenia konsolidatora jako błędy. |
16.1 Ta opcja jest dostępna od wersji 16.1 programu Visual Studio 2019.
17.8 Ta opcja jest dostępna od wersji 17.8 programu Visual Studio 2022.
Zobacz też
Dokumentacja kompilowania języka C/C++
Dokumentacja konsolidatora MSVC