ML 與 ML64 命令列參考

組合並連結一個或多個組合語言原始碼檔案。 命令列選項是區分大小寫的。

欲了解更多 ml64.exe資訊,請參閱 MASM for x64(ml64.exe)。

語法

ML[options] filename [ [ ]optionsfilename

ML64[options] [ [ ]filenameoptions ... filename[/linklink_options]

參數

options
下表列出的選項:

Option Action
/AT 支援微型記憶體模型。 對於違反格式檔要求 .com 的程式碼結構,啟用錯誤訊息。 這個選項並不等同於指令本身 .MODELTINY 。
ml64.exe上沒有。
/Bl filename 在 中選擇一個替代連結器 filename。
/c 只限組裝。 沒有連結。
/coff 產生常見的物件檔案格式(COFF)類型的物件模組。 這是 Win32 組合語言開發的必要條件。
ml64.exe上沒有。
/Cp 保留所有使用者識別碼的大小寫。
/Cu 將所有識別碼映射為大寫(預設)。
ml64.exe上沒有。
/Cx 在公開符號和外部符號中保留格。
/D symbol⟦=value⟧ 定義一個名為 symbol的文字巨集。 如果 value 缺少,則是空白。 多個用空格分隔的標記必須用引號包圍。
/EP 產生預處理的原始碼列表(傳送至 STDOUT)。 參見 /Sf。
/ERRORREPORT[ NONE | PROMPT | QUEUE | SEND] Deprecated. 錯誤回報由 Windows 錯誤回報(WER) 設定控制。
/F hexnum 將堆疊大小設為 hexnum 位元組(與 /link /STACK:<number>相同)。 該值必須以十六進位符號表示。 與/F之間必須有空格。hexnum
/Fe filename 命名可執行檔。
/Fl⟦filename⟧ 產生一個組合好的程式碼清單。 參見 /SF。
/Fm⟦filename⟧ 建立連結映射檔案。
/Fo filename 命名一個物件檔案。 如需詳細資訊,請參閱備註。
/FPi 產生浮點運算的模擬器修正(僅限混合語言)。
ml64.exe上沒有。
/Fr⟦filename⟧ 產生原始碼瀏覽器 .sbr 檔案。
/FR⟦filename⟧ 產生擴充版的原始碼瀏覽器 .sbr 檔案。
/Gc 規定函式呼叫與名稱使用 FORTRAN 或 Pascal 風格的慣例。 與 OPTION LANGUAGE:PASCAL 相同。
ml64.exe上沒有。
/Gd 規定函式呼叫與名稱使用 C 風格慣例。 與 OPTION LANGUAGE:C 相同。
ml64.exe上沒有。
/Gz 規定函 __stdcall 式呼叫與名稱使用慣例。 與 OPTION LANGUAGE:STDCALL 相同。
ml64.exe上沒有。
/H number 限制外部名字只能使用 number 重要角色。 預設是 31 個字元。
ml64.exe上沒有。
/help 顯示機器學習命令列語法與選項摘要。
/I pathname 設定包含檔案的路徑。 最多允許10 /I 個選項。
/nologo 抑制訊息以促成成功組裝。
/omf 產生物件模組檔案格式(OMF)類型的物件模組。 /omf 意味著 /c。 ML.exe 不支援連結 OMF 物件。
ml64.exe上沒有。
/quiet 抑制「集合中」訊息。 可在 Visual Studio 17.6 及更新版本中使用。
/Sa 開啟所有可用資訊的清單。
/safeseh 標記物件檔案:要麼它沒有例外處理器,要麼包含所有異常處理器都以 .SAFESEH宣告 。
ml64.exe上沒有。
/Sf 將第一遍的列表加入列表檔案。
/Sl width 將來源列名的行寬(每行字元數)設定為 width。 範圍是 60-255 或 0。 預設值為 0。 和 。PAGEwidth
/Sn 當產生商品時,會關閉符號表。
/Sp length 將來源列表的頁面長度(每頁行數)設定為 length。 範圍是10-255或0。 預設值為 0。 和 。PAGElength
/Ss text 指定來源列表的文字。 和 SUBTITLE 簡訊一樣。
/St text 指定來源列表的標題。 和 TITLE 簡訊一樣。
/Sx 在上市時開啟了虛假的條件語句。
/Ta filename 組譯一個名稱不以 .asm 副檔名結尾的原始碼檔案。
/unwindv3 啟用實驗性的 Unwind 版本 3 解構指令支援。 在指定時,V3 的回轉指令必須出現在其相關指令之前(與 V1 行為相反),需要透過 Trailgue 記錄.BEGINEPILOG/.ENDEPILOG,且預設的巨集@UnwindVersion回傳 。3 欲了解更多資訊,請參閱 x64 (ml64.exe) 的 MASM。
僅在 ml64.exe提供。
/w 與 /W0 /WX 相同。
/W level 設定警示等級,其中 level = 0、1、2 或 3。
/WX 若產生警告,則回傳錯誤代碼。
/X 忽略 INCLUDE 環境路徑。
/Zd 在物件檔案中產生行號資訊。
/Zf 讓所有符號都公開。
/ZH:MD5 在除錯資訊中使用 MD5 作為校驗碼。
/ZH:SHA_256 除錯資訊中使用 SHA256 校驗和(Visual Studio 2022 版本 17.0 及以上版本預設)。
/ZH:SHA384 在除錯資訊中使用 SHA384 來校驗和。18.6.0
/ZH:SHA512 在除錯資訊中使用 SHA512 作為校驗碼。18.6.0
/Zi 在物件檔案中產生 CodeView 資訊。
/Zm 啟用 M510 與 MASM 5.1 最大相容性的選項。
ml64.exe上沒有。
/Zp⟦alignment⟧ 在指定的位元組邊界上打包結構。 數量 alignment 可以是1、2、4、8或16。
/Zs 只執行語法檢查。
/? 顯示機器學習命令列語法與選項摘要。

18.6.0 此選項自 2026 Visual Studio版本 18.6.0 及 MSVC 版本 14.51 起提供。

filename
檔案的檔名。

link_options
連結選項。 如需詳細資訊,請參閱 連結器選項。

備註

部分 ML 和 ML64 的命令列選項是對位置敏感的。 例如,由於 ML 和 ML64 可以接受多個 /c 選項,任何對應 /Fo 的選項都必須在 /c之前指定。 以下命令列範例說明每個組合語言檔案規範的目標檔案規範:

ml.exe /Fo a1.obj /c a.asm /Fo b1.obj /c b.asm

環境變數

Variable 說明
INCLUDE 指定包含檔案的搜尋路徑。
ML 指定預設的命令列選項。
TMP 指定暫存檔案的路徑。

另請參閱

機器學習錯誤訊息
Microsoft巨集組合器參考