rpcErrorStartEnumeration 函式 (rpcasync.h)

RpcErrorStartEnumeration函式會開始列舉擴充的錯誤資訊。

語法

RPC_STATUS RpcErrorStartEnumeration(
  RPC_ERROR_ENUM_HANDLE *EnumHandle
);

參數

EnumHandle

列舉控制碼的指標,格式為 RPC_ERROR_ENUM_HANDLE 結構。 結構必須由呼叫端配置,而且必須在作業完成之前釋放。 輸入時會忽略所有成員。

傳回值

成功完成會傳回RPC_S_OK。

如果執行緒上沒有擴充的錯誤資訊,則傳回RPC_S_ENTRY_NOT_FOUND。 如果列舉正在進行中,則從開頭開始第二個列舉。

注意 如需有效錯誤碼的清單,請參閱 RPC 傳回值
 

備註

RpcErrorStartEnumeration 函式呼叫應該緊接在傳回錯誤的呼叫之後。 否則,後續呼叫可能會覆寫擴充的錯誤資訊。 列舉控制碼必須使用 RpcErrorEndEnumeration 函式釋放。

呼叫 RpcErrorStartEnumeration 之後,就可以放心地使用不同的執行緒的列舉控制碼。 RpcErrorStartEnumeration函式會擷取擴充錯誤資訊的快照集,而傳回的列舉控制碼會在快照集上運作。 不過,RPC 不會線上程之間同步列舉函式,因此呼叫端必須負責這麼做。 對 RpcErrorStartEnumeration的後續呼叫會開始新的列舉,而且不會針對相同的擴充錯誤資訊建立第二個列舉。

如果記憶體不足,RpcErrorStartEnumeration 函式可能無法開始列舉。 列舉控制碼只能傳遞至 RpcError* 函式,而且無法與其他函式搭配使用,例如 DuplicateHandle

在一個列舉上推進列舉指標不會影響獨立啟動的列舉。

需求

   
最低支援的用戶端 Windows XP [傳統型應用程式 |UWP 應用程式]
最低支援的伺服器 Windows Server 2003 [傳統型應用程式 |UWP 應用程式]
目標平台 Windows
標頭 rpcasync.h (包含 Rpc.h)
程式庫 Rpcrt4.lib
Dll Rpcrt4.dll

另請參閱

取得擴充 RPC 錯誤資訊

RPC_EE_INFO_PARAM

RPC_ERROR_ENUM_HANDLE

RPC_EXTENDED_ERROR_INFO

RpcErrorAddRecord

RpcErrorClearInformation

RpcErrorEndEnumeration

RpcErrorGetNextRecord

RpcErrorGetNumberOfRecords

RpcErrorLoadErrorInfo

RpcErrorResetEnumeration

RpcErrorSaveErrorInfo