/env 參數
/env參數會選取應用程式執行所在的環境。
midl /env { win32 | ia64 | amd64 | win64 }
-
win32
-
指示 MIDL 編譯器產生 32 位環境的存根檔案或類型程式庫檔案。
-
ia64
-
指示 MIDL 編譯器針對 Intel Architecture 64 位 (IA64) 環境產生存根檔案或類型程式庫檔案。
-
amd64
-
指示 MIDL 編譯器針對進階 Micro Devices 64 位 (AMD64) 環境產生存根檔案或類型程式庫檔案。
-
win64
-
與 ia64相同的行為。
/env參數主要會影響用於該環境中結構的封裝層級。 請務必為 MIDL 編譯器和 C 編譯器指定相同的封裝層級設定。
/env參數會決定封裝層級和其他設定,如下所示:
- 當您指定 win32時,產生的存根會針對涉及遠端作業的所有類型使用 C 編譯器封裝層級 8。 int資料類型都是 32 位。 指標為 32 位。
- 當您指定 ia64 或 amd64時,MIDL 編譯器會在指定的 (Intel 或 AMD) 64 位平臺的跨編譯器模式中執行。 產生的存根會針對涉及遠端作業的所有類型使用 C 編譯器封裝層級 8。 long和int資料類型為 32 位。 指標為 64 位。
/align、/pack和/Zp參數的優先順序高於/env設定。
如需 MIDL 和 RPC 64 位支援的詳細資訊,請參閱 設計 64 位相容介面。
midl /env win32 filename.idl
midl /env ia64 filename.idl
midl /env amd64 filename.idl
midl /env win64 filename.idl