RpcErrorStartEnumeration-Funktion (rpcasync.h)

Die RpcErrorStartEnumeration-Funktion beginnt mit der Enumeration erweiterter Fehlerinformationen.

Syntax

RPC_STATUS RpcErrorStartEnumeration(
  RPC_ERROR_ENUM_HANDLE *EnumHandle
);

Parameter

EnumHandle

Zeiger auf das Enumerationshandle in Form einer RPC_ERROR_ENUM_HANDLE-Struktur . Die Struktur muss vom Aufrufer zugewiesen werden und kann erst freigegeben werden, wenn der Vorgang abgeschlossen ist. Alle Member werden bei der Eingabe ignoriert.

Rückgabewert

Der erfolgreiche Abschluss gibt RPC_S_OK zurück.

Gibt RPC_S_ENTRY_NOT_FOUND zurück, wenn keine erweiterten Fehlerinformationen im Thread vorhanden sind. Wenn eine Enumeration ausgeführt wird, beginnt das Starten einer zweiten Enumeration von Anfang an.

Hinweis Eine Liste der gültigen Fehlercodes finden Sie unter RPC-Rückgabewerte.
 

Hinweise

Der RpcErrorStartEnumeration-Funktionsaufruf sollte unmittelbar nach dem Aufruf erfolgen, der den Fehler zurückgegeben hat. Andernfalls können erweiterte Fehlerinformationen durch nachfolgende Aufrufe überschrieben werden. Enumerationshandles müssen mit der RpcErrorEndEnumeration-Funktion freigegeben werden.

Nachdem RpcErrorStartEnumeration aufgerufen wurde, ist es sicher, das Enumerationshandle aus einem anderen Thread zu verwenden. Die RpcErrorStartEnumeration-Funktion übernimmt eine Momentaufnahme der erweiterten Fehlerinformationen, und das zurückgebende Enumerationshandle funktioniert auf dem Momentaufnahme. Enumerationsfunktionen werden jedoch nicht durch RPC zwischen Threads synchronisiert, sodass der Aufrufer dafür verantwortlich ist. Nachfolgende Aufrufe von RpcErrorStartEnumeration beginnt eine neue Enumeration und erstellt keine zweite Enumeration für dieselben erweiterten Fehlerinformationen.

Die RpcErrorStartEnumeration-Funktion schlägt möglicherweise fehl, wenn nicht genügend Arbeitsspeicher zum Starten der Enumeration vorhanden ist. Das Enumerationshandle kann nur an RpcError*-Funktionen übergeben werden und kann nicht mit anderen Funktionen wie DuplicateHandle verwendet werden.

Das Voranschreiten des Enumerationszeigers für eine Enumeration hat keine Auswirkungen auf unabhängig gestartete Enumerationen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP [Desktop-Apps | UWP-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [Desktop-Apps | UWP-Apps]
Zielplattform Windows
Kopfzeile rpcasync.h (include Rpc.h)
Bibliothek Rpcrt4.lib
DLL Rpcrt4.dll

Weitere Informationen

Abrufen erweiterter RPC-Fehlerinformationen

RPC_EE_INFO_PARAM

RPC_ERROR_ENUM_HANDLE

RPC_EXTENDED_ERROR_INFO

RpcErrorAddRecord

RpcErrorClearInformation

RpcErrorEndEnumeration

RpcErrorGetNextRecord

RpcErrorGetNumberOfRecords

RpcErrorLoadErrorInfo

RpcErrorResetEnumeration

RpcErrorSaveErrorInfo