/robust 參數

/robust參數會告訴 MIDL 編譯器產生額外的錯誤檢查資訊,NDR 引擎會在執行時間用來執行完整性檢查。

midl /robust {/Oicf | /Oif }

切換選項

/Oicf

/Oif

這些參數的功能相同。 它們會指定封送處理的無程式碼 Proxy 方法,並使用快速格式字串來改善效能。 請參閱 / Oi

備註

使用 /robust 交換器會產生其他資訊,讓網路資料標記法 (NDR) 引擎對動態陣列、等位和 輸出 介面指標中的相互關聯引數執行執行時間錯誤檢查。 /robust參數僅適用于 Windows 2000 和更新版本的 Windows。

相互關聯的引數是使用任何屬性的引數,允許在執行時間判斷資料物件的大小:size_is、length_isfirst_is、last_is、max_is、switch_isiid_is。 根據線路標記法的 OSF-DCE 規格,這個相互關聯的引數會出現在兩個不同的位置。 例如,請考慮 使用 size_is 屬性的一般用法:

HRESULT Func1([in] long Size, 
              [in, size_is(Size)]BAR_TYPE *pBarType);

在此範例中,用戶端會根據 BAR_TYPES) 專案數目,以及BAR_TYPEs的實際區塊指標,傳遞 long 來指定BAR_TYPEs (區塊的大小。 Size 引數會與 pBarType 引數相互關聯。 根據 OSF-DCE 規格,Size 引數會線上路上表示兩次,首先做為本身,然後使用代表 pBarType 引數的BAR_TYPE元素陣列。 每個引數都會根據自己的線表示,獨立解除封存。 一般而言,Size 引數及其複本,用來表示其他引數的一部分具有相同的值。 不過,如果 Size 引數損毀 (例如,當BAR_TYPES區塊大於配置) 時,伺服器應用程式可能會停止回應,因為它會使用 Size 引數的值來測量傳入資料。

需要 /robust參數,才能使用 range 屬性實作有效的範圍檢查。

範例

midl /robust /Oicf filename.idl

另請參閱

一般 MIDL 命令列語法

/Oi

範圍