連結器選項
LINK.exe連結 Common Object File Format (COFF) 物件檔案和連結庫,以建立可執行檔 (EXE) 檔案或動態連結庫 (DLL)。
下表列出 LINK.exe 的選項。 如需 LINK 的詳細資訊,請參閱:
在命令行上,鏈接器選項不會區分大小寫;例如, /base
和 /BASE
表示相同的專案。 如需有關如何命令列或在 Visual Studio 中指定每個選項的詳細資訊,請參閱該選項的文件。
您可以使用 comment
pragma 來指定某些連結器選項。
依字母順序列出的連結器選項
選項 | 目的 |
---|---|
@ |
指定回應檔。 |
/ALIGN |
指定每一個區段的對齊情況。 |
/ALLOWBIND |
指定 DLL 無法繫結。 |
/ALLOWISOLATION |
指定資訊清單查閱的行為。 |
/APPCONTAINER |
指定應用程式是否必須在 appcontainer 處理序環境中執行。 |
/ARM64XFUNCTIONPADMINX64 |
指定 ARM64X 映射中 x64 函式之間的最小填補位元組數目。17.8 |
/ASSEMBLYDEBUG |
將 DebuggableAttribute 加入至 Managed 映像檔。 |
/ASSEMBLYLINKRESOURCE |
建立與 Managed 資源的連結。 |
/ASSEMBLYMODULE |
指定 Microsoft 中繼語言 (MSIL) 模組應該匯入至組件。 |
/ASSEMBLYRESOURCE |
將 Managed 資源內嵌至組件中。 |
/BASE |
設定程式的基底位址。 |
/CETCOMPAT |
將二進位檔標示為 CET 陰影堆疊相容。 |
/CGTHREADS |
設定在指定連結時間程式碼產生時,要用於最佳化及程式碼產生的 cl.exe 執行緒數目。 |
/CLRIMAGETYPE |
設定 CLR 映像的類型 (IJW、純或安全)。 |
/CLRSUPPORTLASTERROR |
保留透過 P/Invoke 機制呼叫之函式的最後一個錯誤碼。 |
/CLRTHREADATTRIBUTE |
指定要套用至 CLR 程式進入點的 threading 屬性。 |
/CLRUNMANAGEDCODECHECK |
指定連結器是否將 屬性套用 SuppressUnmanagedCodeSecurity 至連結器產生的 P/Invoke 存根,以從 Managed 程式代碼呼叫到原生 DLL。 |
/DEBUG |
建立偵錯資訊。 |
/DEBUGTYPE |
指定要包含在偵錯資訊的資料。 |
/DEF |
將模組定義 (.def) 檔傳遞至連結器。 |
/DEFAULTLIB |
解析外部參考時,搜尋指定的程式庫。 |
/DELAY |
控制 DLL 的延遲載入。 |
/DELAYLOAD |
引起指定之 DLL 的延遲載入。 |
/DELAYSIGN |
部分簽署組件。 |
/DEPENDENTLOADFLAG |
設定相依 DLL 載入的預設旗標。 |
/DLL |
建置 DLL。 |
/DRIVER |
建立核心模式驅動程式。 |
/DYNAMICBASE |
指定是否要使用位址空間配置隨機化 (ASLR) 功能來產生在載入時間重新設定基底的可執行檔映像。 |
/ENTRY |
設定開始位址。 |
/ERRORREPORT |
已取代。 錯誤報告是由 Windows 錯誤報告 (WER) 設定所控制。 |
/EXPORT |
匯出函式。 |
/FILEALIGN |
對齊指定值之倍數的輸出檔內的區段。 |
/FIXED |
建立僅可在其慣用基底位址載入的程式。 |
/FORCE |
強制連結完成,即使存在未解析的符號或符號定義多次也一樣。 |
/FUNCTIONPADMIN |
建立可熱修補的映像檔。 |
/GENPROFILE , /FASTGENPROFILE |
這兩個選項 .pgd 都指定連結器產生檔案,以支援配置檔引導優化 (PGO)。 /GENPROFILE 和 /FASTGENPROFILE 使用不同的預設參數。 |
/GUARD |
啟用「控制流程防護」防護。 |
/HEAP |
設定堆積的大小 (以位元組為單位)。 |
/HIGHENTROPYVA |
指定支援高熵 64 位元位址空間配置隨機載入 (ASLR)。 |
/IDLOUT |
指定檔案的名稱 .idl 和其他 MIDL 輸出檔。 |
/IGNORE |
隱藏指定連結器警告的輸出。 |
/IGNOREIDL |
防止將屬性資訊處理到 .idl 檔案中。 |
/ILK |
覆寫預設累加資料庫檔名。 |
/IMPLIB |
覆寫預設匯入程式庫名稱。 |
/INCLUDE |
強制執行符號參考。 |
/INCREMENTAL |
控制累加連結。 |
/INFERASANLIBS |
使用推斷的清理工具連結庫。 |
/INTEGRITYCHECK |
指定模組在載入時需要進行簽章檢查。 |
/KERNEL |
建立核心模式二進位檔。 |
/KEYCONTAINER |
指定用於簽署組件的金鑰容器。 |
/KEYFILE |
指定用於簽署組件的金鑰或金鑰組。 |
/LARGEADDRESSAWARE |
告知編譯程式應用程式支援大於 2 GB 的位址 |
/LIBPATH |
指定要在環境程式庫路徑之前搜尋的路徑。 |
/LINKREPRO |
指定要在 中產生連結重現成品的路徑。 |
/LINKREPROFULLPATHRSP |
產生回應檔,其中包含連結器做為輸入之所有檔案的絕對路徑。 |
/LINKREPROTARGET |
只有在產生指定的目標時,才會產生連結重現。16.1 |
/LTCG |
指定連結時產生程式碼。 |
/MACHINE |
指定目標平台。 |
/MANIFEST |
建立並存資訊清單檔,並選擇性地將其內嵌於二進位檔中。 |
/MANIFESTDEPENDENCY |
指定 <指令清單檔中的 dependentAssembly> 區段。 |
/MANIFESTFILE |
變更資訊清單檔的預設名稱。 |
/MANIFESTINPUT |
指定連結器的資訊清單輸入檔,以在二進位檔中處理並內嵌於二進位檔中。 您可以多次使用此選項,以指定多個資訊清單輸入檔。 |
/MANIFESTUAC |
指定使用者帳戶控制 (UAC) 資訊是否內嵌於程式資訊清單中。 |
/MAP |
建立對應檔 (Mapfile)。 |
/MAPINFO |
在對應檔中包括指定的資訊。 |
/MERGE |
結合區段。 |
/MIDL |
指定 MIDL 命令列選項。 |
/NATVIS |
將調試程式可視化檢視從 Natvis 檔案新增至程式資料庫 (PDB)。 |
/NOASSEMBLY |
不建立 .NET Framework 組件。 |
/NODEFAULTLIB |
當解析外部參考時,忽略所有 (或指定的) 預設程式庫。 |
/NOENTRY |
建立僅含資源的 DLL。 |
/NOFUNCTIONPADSECTION |
停用指定區段中函式的函式填補。17.8 |
/NOLOGO |
隱藏啟始橫幅。 |
/NXCOMPAT |
將可執行檔標記為已驗證與 Windows 資料執行防止功能相容。 |
/OPT |
控制 LINK 最佳化。 |
/ORDER |
以預先定義的順序,將 COMDAT 放入映像檔。 |
/OUT |
指定輸出檔名稱。 |
/PDB |
建立 PDB 檔案。 |
/PDBALTPATH |
使用替代位置儲存 PDB 檔。 |
/PDBSTRIPPED |
建立沒有私人符號的 PDB 檔案。 |
/PGD |
指定 .pgd 配置檔引導式優化檔案。 |
/POGOSAFEMODE |
過時 建立安全線程的 PGO 檢測組建。 |
/PROFILE |
產生可與效能工具分析工具搭配使用的輸出檔。 |
/RELEASE |
設定標頭中的 .exe 總和檢查碼。 |
/SAFESEH |
指定映像檔將包含安全例外狀況處理常式的表格。 |
/SECTION |
覆寫區段的屬性。 |
/SOURCELINK |
指定要新增至 PDB 的 SourceLink 檔案。 |
/STACK |
設定堆疊的大小 (以位元組為單位)。 |
/STUB |
將 MS-DOS Stub 程式附加至 Win32 程式。 |
/SUBSYSTEM |
告知操作系統如何執行 .exe 檔案。 |
/SWAPRUN |
告知作業系統在執行之前,將連結器輸出複製到交換檔。 |
/TIME |
輸出連結器傳遞計時資訊。 |
/TLBID |
指定連結器產生類型程式庫的資源 ID。 |
/TLBOUT |
指定檔案的名稱 .tlb 和其他 MIDL 輸出檔。 |
/TSAWARE |
建立專門設計用來在終端伺服器下執行的應用程式。 |
/USEPROFILE |
使用配置檔引導優化定型數據來建立優化的映像。 |
/VERBOSE |
列印連結器進度訊息。 |
/VERSION |
指派版本號碼。 |
/WHOLEARCHIVE |
包含來自指定靜態庫的每個物件檔案。 |
/WINMD |
啟用 Windows 執行階段中繼資料檔的產生。 |
/WINMDFILE |
指定連結器選項所產生的 /WINMD Windows 執行階段 元資料 (winmd) 輸出檔檔名。 |
/WINMDKEYFILE |
指定用於簽署 Windows 執行階段中繼資料的金鑰或金鑰組。 |
/WINMDKEYCONTAINER |
指定用於簽署 Windows 中繼資料檔的金鑰容器。 |
/WINMDDELAYSIGN |
部分簽署 Windows 執行階段 元資料 (.winmd ) 檔案,方法是將公鑰放在 winmd 檔案中。 |
/WX |
將連結器警告視為錯誤。 |
16.1 此選項可從Visual Studio 2019 16.1版開始提供。
17.8 從 Visual Studio 2022 17.8 版開始提供此選項。