fault_status屬性
[fault_status] ACF 屬性會指定類型為 error_status_t的錯誤碼表示遠端程式的失敗,而不是其他類型的問題,例如通訊錯誤。
[fault_status [ , ACF-function-attributes ] ] function-name(
[ [ ACF-parameter-attributes ] ] parameter-name
, ... );
[ [ ACF-function-attributes ] ] function-name(
[fault_status [ , ACF-parameter-attributes ] ] parameter-name
, ... );
-
ACF-function-attributes
-
指定零個或多個 ACF 函數屬性,例如[fault_status]和[nocode]。 函式屬性會以方括弧括住。 請注意,零個或多個屬性可以套用至函式。 以逗號分隔多個函式屬性。 另請注意,如果 [fault_status] 顯示為函式屬性,它也無法顯示為參數屬性。
-
function-name
-
指定 IDL 檔案中所定義的函式名稱。
-
ACF-parameter-attributes
-
指定套用至參數的屬性。 請注意,零個或多個屬性可以套用至 參數。 參數屬性會以方括弧括住。 以逗號分隔多個參數屬性。 ACF 中不允許 IDL 參數屬性,例如方向屬性。 請注意,如果 [fault_status] 顯示為參數屬性,它也無法顯示為函式屬性。
-
parameter-name
-
指定 IDL 檔案中所定義之函式的參數。 函式的每個參數都必須以相同的順序指定,並使用 IDL 檔案中定義的相同名稱。
[fault_status]屬性可以當做函式屬性或參數屬性使用,但每個函式只能顯示一次。 它可以套用至函式本身,或套用至每個函式中的一個參數。
[fault_status]屬性只能套用至傳回類型error_status_t的函式。 當遠端程式以導致錯誤 PDU 傳回的方式失敗時,會傳回錯誤碼。
當 [fault_status]當做參數屬性使用時,參數必須是類型為 error_status_t的[out]參數。 如果發生伺服器錯誤,參數會設定為錯誤碼。 成功完成遠端呼叫時,程式會設定 值。
與 [fault_status] 屬性相關聯的參數不需要在 IDL 檔案中指定。 未指定參數時,會在 DCE IDL 檔案中定義的最後一個參數之後產生類型error_status_t的新out參數。
[fault_status]和[comm_status]屬性都可能以函式屬性或參數屬性的形式出現在單一函式中。 如果這兩個屬性都是函式屬性,或是它們套用至相同的參數,而且不會發生錯誤,則函式或參數具有 值error_status_ok。 否則,它會包含適當的狀態碼值。 由於 針對 [fault_status] 傳回的值與 [comm_status]傳回的值不同,因此會立即解譯傳回的值。