一般 MIDL 命令行語法
MIDL 編譯程式會處理 IDL 檔案和選擇性應用程式組態檔 (ACF),以產生一組輸出檔案。 IDL 檔案介面屬性清單中指定的屬性會決定編譯程式是否為 RPC 介面或自定義 OLE 介面產生來源檔案。
切換選項
midl [command-line-switch [switch-options]] filename
-
命令行參數
-
指定 MIDL 編譯程式命令行參數。 參數可以出現在任何序列中。
-
參數選項
-
指定與每個參數相關聯的選項。 每個 MIDL 編譯程式參數的參考專案會說明有效的選項。
-
檔名
-
指定IDL檔案的名稱。 此檔案的擴展名通常為 .idl,但可以有另一個或沒有擴展名。
言論
下列清單顯示針對名為 Name.idl 之 IDL 檔案所產生的檔案預設名稱。 您可以使用命令列參數來覆寫這些預設名稱。 請注意,IDL 檔名可以有 .idl 以外的擴展名,或完全沒有擴展名。
根據預設,如果介面屬性清單不包含 物件 或 本機 屬性),編譯程式會針對 RPC 介面產生下列檔案:
- 用戶端存根 (name_c.c)
- 伺服器存根 (name_s.c)
- 標頭檔 (name.h)
當 物件 屬性出現在介面屬性清單中時,編譯程式會為 COM 介面產生下列檔案:
- 介面 Proxy 檔案 (name_p.c)
- 介面頭檔 (name.h)
- 介面 UUID 檔案 (name_I.c)
當 本機 屬性出現在介面屬性清單中時,編譯程式只會產生介面頭檔 Name.h。
MICROSOFT RPC 提供的 MIDL 編譯程式會視需要叫用 C 預處理器來處理 IDL 檔案。 它不會自動叫用 C 編譯程式來編譯產生的檔案。
注意
MICROSOFT RPC 提供的 MIDL 編譯程式會使用與 DCE IDL 編譯程式不同的命令行語法。
MIDL 編譯程式會切換 /env、/server、/sstub,以及 /out 影響伺服器存根檔案。
從 MIDL 6.0.359 版開始,MIDL 編譯程式的預設命令行選項會 /Oicf /robust。 若要停用 /robust,請指定 /no_robust 選項。
頭檔
頭檔包含IDL檔案中宣告的所有資料類型和作業的定義。 標頭檔案必須包含在呼叫已定義作業、實作已定義作業或作已定義型別的所有應用程式模組中。
MIDL 編譯程式會切換 /header,/out 會影響頭檔。