Share via


MIDL 工作

包裝 Microsoft 介面定義語言 (MIDL) 編譯器工具 (midl.exe)。 如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考)。

參數

下列描述 MIDL 工作的參數。 大部分的工作參數以及數組參數會對應到命令列選項。

  • AdditionalIncludeDirectories

    選擇性的 String[] 參數。

    將目錄加入要在其中搜尋匯入的 IDL 檔案、包含的標頭檔及應用程式組態檔 (ACF) 的目錄清單。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /I 選項。

  • AdditionalOptions

    選擇性的 String 參數。

    命令列選項清單。 例如 /<option1> /<option2> /<option#>。 使用此參數,來指定任何其他 MIDL 工作參數未表示的命令列選項。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考)。

  • ApplicationConfigurationMode

    選擇性的 Boolean 參數。

    如果是 true,可讓您在 IDL 檔案中使用某些 ACF 關鍵字。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /app_config 選項。

  • ClientStubFile

    選擇性的 String 參數。

    指定 RPC 介面的用戶端 Stub 檔案名稱。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /cstub 選項。 另請參閱此表格中的 ServerStubFile 參數。

  • CPreprocessOptions

    選擇性的 String 參數。

    指定要傳遞至 C/C++ 前置處理器的選項。 指定以空格分隔的前置處理器選項清單。 必須包含 /E 選項。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /cpp_opt 選項。

  • DefaultCharType

    選擇性的 String 參數。

    指定預設的字元類型,C 編譯器將使用此類型來編譯產生的程式碼。

    指定下列其中一個值;每個值會分別對應至一個命令列選項。

    命令列選項
    Signed /char signed
    Unsigned /char unsigned
    Ascii /char ascii7

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /char 選項。

  • DllDataFileName

    選擇性的 String 參數。

    指定針對 Proxy DLL 所產生之 dlldata 檔案的檔名。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /dlldata 選項。

  • EnableErrorChecks

    選擇性的 String 參數。

    指定錯誤檢查的類型,產生的 Stub 將會在執行階段加以執行。

    指定下列其中一個值;每個值會分別對應至一個命令列選項。

    命令列選項
    None /error none
    EnableCustom /error
    全部 /error all

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /error 選項。

  • ErrorCheckAllocations

    選擇性的 Boolean 參數。

    如果是 true,即會檢查有無記憶體不足的錯誤。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /error allocation 選項。

  • ErrorCheckBounds

    選擇性的 Boolean 參數。

    如果是 true,即會根據傳輸長度規格來檢查不一致的各種陣列大小。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /error bounds_check 選項。

  • ErrorCheckEnumRange

    選擇性的 Boolean 參數。

    如果是 true,即會檢查列舉值位於允許的範圍內。

    如需詳細資訊,請參閱 midl.exe 的命令列說明 (/?) 中的 /error enum 選項。

  • ErrorCheckRefPointers

    選擇性的 Boolean 參數。

    如果是 true,即會檢查未將任何 Null 參考指標傳遞到用戶端 Stub。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /error ref 選項。

  • ErrorCheckStubData

    選擇性的 Boolean 參數。

    如果是 true,即會產生 Stub,來攔截伺服器端的解除封送處理例外狀況,並將它們傳播回用戶端。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /error stub_data 選項。

  • GenerateClientFiles

    選擇性的 String 參數。

    指定編譯器是否要針對 RPC 介面產生用戶端的 C 原始程式檔。

    指定下列其中一個值;每個值會分別對應至一個命令列選項。

    命令列選項
    None /client none
    Stub /client stub

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /client 選項。

  • GenerateServerFiles

    選擇性的 String 參數。

    指定編譯器是否要針對 RPC 介面產生伺服器端的 C 原始程式檔。

    指定下列其中一個值;每個值會分別對應至一個命令列選項。

    命令列選項
    None /server none
    Stub /server stub

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /server 選項。

  • GenerateStublessProxies

    選擇性的 Boolean 參數。

    如果是 true,即會透過物件介面的 Stubless Proxies 一併產生完全解譯的 Stub。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /Oicf 選項。

  • GenerateTypeLibrary

    選擇性的 Boolean 參數。

    若為 true,就不會產生類型程式庫 (.tlb) 檔案。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /notlb 選項。

  • HeaderFileName

    選擇性的 String 參數。

    指定所產生的標頭檔名稱。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /h/header 選項。

  • IgnoreStandardIncludePath

    選擇性的 Boolean 參數。

    如果是 true,則 MIDL 工作只會搜尋使用 AdditionalIncludeDirectories 參數指定的目錄,並忽略目前的目錄以及 INCLUDE 環境變數所指定的目錄。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /no_def_idir 選項。

  • InterfaceIdentifierFileName

    選擇性的 String 參數。

    針對 COM 介面指定「介面識別項檔」的名稱。 這會覆寫透過在 IDL 檔名中加入 "_i.c" 而取得的預設名稱。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /iid 選項。

  • LocaleID

    選擇性的 int 參數。

    指定「地區設定識別項」,讓您能夠在輸入檔、檔案名稱和目錄路徑中使用國際字元。 指定十進位的地區設定識別項。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /lcid 選項。 另請參閱地區設定識別碼

  • MkTypLibCompatible

    選擇性的 Boolean 參數。

    若為 true,則輸入檔的格式必須與 mktyplib.exe 2.03 版相容。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /mktyplib203 選項。 另請參閱 MSDN 網站上的 ODL 檔案語法

  • OutputDirectory

    選擇性的 String 參數。

    指定 MIDL 工作寫入輸出檔的預設目錄。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /out 選項。

  • PreprocessorDefinitions

    選擇性的 String[] 參數。

    指定一或多個「定義」;也就是要傳遞到 C 前置處理器的名稱和選擇性的值,如同透過 #define 指示詞。 每個定義的格式是 name[=value]

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /D 選項。 另請參閱此表格中的 UndefinePreprocessorDefinitions 參數。

  • ProxyFileName

    選擇性的 String 參數。

    針對 COM 介面指定介面 Proxy 檔案的名稱。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /proxy 選項。

  • RedirectOutputAndErrors

    選擇性的 String 參數。

    將輸出 (例如錯誤訊息和警告) 從標準輸出重新導向到指定的檔案。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /o 選項。

  • ServerStubFile

    選擇性的 String 參數。

    指定 RPC 介面的伺服器 Stub 檔案名稱。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /sstub 選項。 另請參閱此表格中的 ClientStubFile 參數。

  • 來源

    必要的 ITaskItem[] 參數。

    指定以空格分隔的原始程式檔清單。

  • StructMemberAlignment

    選擇性的 String 參數。

    指定目標系統中結構的對應儲存 (「封裝層級」)。

    指定下列其中一個值;每個值會分別對應至一個命令列選項。

    命令列選項
    NotSet <none>
    1 /Zp1
    2 /Zp2
    4 /Zp4
    8 /Zp8

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /Zp 選項。 /Zp 選項相當於 /pack 選項和較舊的 /align 選項。

  • SuppressCompilerWarnings

    選擇性的 Boolean 參數。

    如果是 true,即會隱藏來自 MIDL 工作的警告訊息。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /no_warn 選項。

  • SuppressStartupBanner

    選擇性的 Boolean 參數。

    如果是 true,當工作開始時,會防止顯示著作權和版本號碼訊息。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /nologo 選項。

  • TargetEnvironment

    選擇性的 String 參數。

    指定執行應用程式的環境。

    指定下列其中一個值;每個值會分別對應至一個命令列選項。

    命令列選項
    NotSet <none>
    Win32 /env win32
    Itanium /env ia64
    X64 /env x64

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /env 選項。

  • TrackerLogDirectory

    選擇性的 String 參數。

    指定儲存此工作之追蹤記錄檔的中繼目錄。

  • TypeLibFormat

    選擇性的 String 參數。

    指定類型程式庫檔案的格式。

    指定下列其中一個值;每個值會分別對應至一個命令列選項。

    命令列選項
    NewFormat /newtlb
    OldFormat /oldtlb

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /newtlb/oldtlb 選項。

  • TypeLibraryName

    選擇性的 String 參數。

    指定類型程式庫檔案的名稱。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /tlb 選項。

  • UndefinePreprocessorDefinitions

    選擇性的 String[] 參數。

    將名稱傳遞到 C 前置處理器 (如同透過 #undefine 指示詞),藉以移除名稱所有先前的定義。 指定一或多個先前定義的名稱。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /U 選項。 另請參閱此表格中的 PreprocessorDefinitions 參數。

  • ValidateAllParameters

    選擇性的 Boolean 參數。

    如果是 true,即會產生其他錯誤檢查資訊,以便在執行階段用來執行完整性檢查。 如果是 false,則不會產生錯誤檢查資訊。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /robust/no_robust 選項。

  • WarnAsError

    選擇性的 Boolean 參數。

    如果是 true,即會將所有警告視為錯誤。

    如果未指定 WarningLevel MIDL 工作參數,就會將預設層級 (層級 1) 上的警告視為錯誤。

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /WX 選項。 另請參閱此表格中的 WarningLevel 參數。

  • WarningLevel

    選擇性的 String 參數。

    指定要發出的警告嚴重性 (「警告層級」)。 值為 0,就會不發出任何警告。 否則,如果其警告層級是小於或等於指定值的數字,就會發出警告。

    指定下列其中一個值;每個值會分別對應至一個命令列選項。

    命令列選項
    0 /W0
    1 /W1
    2 /W2
    3 /W3
    4 /W4

    如需詳細資訊,請參閱 MIDL Command-Line Reference (MIDL 命令列參考) 中的 /W 選項。 另請參閱此表格中的 WarnAsError 參數。

另請參閱