/osf 參數

/Osf 交換器會強制與憑證 DCE 具有嚴格的相容性。

midl /osf

切換選項

此參數沒有任何參數。

備註

如果您的應用程式需要與憑證 DCE 的嚴格相容性,以提供可攜性的原因。

/osf 模式中,當您使用完整指標、引數需要記憶體配置,或當您使用 [ 啟用 _ 配置 ] 屬性時,便會自動啟用 RpcSs 套件。 這表示您不需要在用戶端和伺服器應用程式中提供 midl _ 使用者 _ 配置midl _ 使用者 _ 免費 函數。

當您使用 /osf 參數進行編譯時,無法使用下列 Microsoft 擴充功能:

  • 在 IDL 檔案中) (未具名引數的抽象宣告子。
  • COM 物件的介面定義。
  • 具有超過17個字元的介面名稱。
  • 僅限 MIDL 屬性(例如, 電傳 _ 封送處理、 使用者 _ 封送處理和 typelib) (ODL) 擴充功能。
  • 在 IDL 檔案中使用 ACF 關鍵字 (MIDL /app _ config 選項) 。
  • 用戶端上的靜態回呼函數。
  • Async屬性。
  • .cpp _ 引號# pragma midl _ echo
  • wchar _ t 寬字元類型、常數和字串。
  • 列舉 初始化 (稀疏列舉值) 。
  • 僅限 輸出大小的規格。
  • 混合大小的指標和大小的陣列。
  • 用於大小和鑒別子規范的運算式。
  • 引數清單中任何位置的明確控制碼參數。 在 /osf 模式中,MIDL 編譯器會尋找明確的系結控制碼做為第一個參數。 當第一個參數不是系結控制碼,且指定了一個或多個內容控制碼時,會使用最左邊的內容控制碼作為系結控制碼。 當第一個參數不是控制碼,而且沒有內容控制碼時,程式會使用 ACF 屬性 隱含 _ 控制碼自動 _ 控制碼來使用隱含系結。
  • 指標屬性型別繼承。 憑證 DCE 不允許未歸屬指標。 因此,在 /osf 模式中,每個 IDL 檔案都必須定義其指標的屬性。 如果有任何指標沒有明確的屬性,則 IDL 檔案必須具有 指標 _ 預設 規格,才能設定指標類型。
  • IDL 檔案中的多個介面。
  • 介面區塊外部的定義。
  • 類型限定詞,例如 stdcall
  • 省略方向屬性。

當您使用 /osf 參數編譯時,無法使用下列 C/c + + 語言延伸模組:

  • 結構和等位中的位欄位。
  • 以兩個斜線字元分隔的單行批註 (//) 。
  • 外部宣告。
  • 參數清單中有省略號的程式。
  • 輸入 int
  • 輸入 *void * _ (,但 _ 內容 _ 控制碼 *屬性) 除外。
  • 類型限定詞,包括具有 ANSI 一致前置詞的表單,其中包含兩個底線字元: _ _ cdeclcdeclconstconst_ _ exportexport_ _ farfar_ _ loaddsloadds_ _ nearnear_ _ pascalpascal_ _ stdcallstdcall_ _ volatilevolatile
  • 任何 # pragma警告或 # pragma 批註。
  • 類型序列化。
  • _ _ Int3264資料類型。
  • /Protocol參數和 ndr64 傳輸語法。

範例

midl/osf 檔案名 .idl

midl/osf/app _ config 檔案名 .idl

另請參閱

一般 MIDL 命令列語法

/app _ 設定

/ms _ ext

Rpcss 記憶體管理套件