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 |