Freigeben über


RpcRevertToSelfEx-Funktion (rpcdce.h)

Mit der RpcRevertToSelfEx-Funktion kann ein Server die Identität eines Clients annehmen und dann in einem Multithreadvorgang rückgängig machen, bei dem der Aufruf zum Annehmen der Identität eines Clients von einem anderen Thread als dem thread stammen kann, der ursprünglich vom RPC bereitgestellt wurde.

Syntax

RPC_STATUS RpcRevertToSelfEx(
  RPC_BINDING_HANDLE BindingHandle
);

Parameter

BindingHandle

Bindungshandle auf dem Server, das eine Bindung an den Client darstellt, den der Server imitiert hat. Der Wert 0 (null) gibt das Clienthandle des aktuellen Threads an. In diesem Fall ist die Funktionalität von RpcRevertToSelfEx identisch mit der Funktion RpcRevertToSelf .

Rückgabewert

Wert Bedeutung
RPC_S_OK
Der Aufruf war erfolgreich.
RPC_S_NO_CALL_ACTIVE
Der Server verfügt nicht über einen Client, der die Identität annehmen kann.
RPC_S_INVALID_BINDING
Das Bindungshandle ist ungültig.
RPC_S_WRONG_KIND_OF_BINDING
Dies ist die falsche Art der Bindung für diesen Vorgang.
RPC_S_CANNOT_SUPPORT
Der Aufruf wird für dieses Betriebssystem, diesen Transport oder dieses Sicherheitssubsystem nicht unterstützt.
 
Hinweis Eine Liste der gültigen Fehlercodes finden Sie unter RPC-Rückgabewerte.
 

Hinweise

Nachdem RpcImpersonateClient aufgerufen und alle Aufgaben abgeschlossen wurden, die einen Clientidentitätswechsel erfordern, ruft der Server RpcRevertToSelfEx auf, um den Identitätswechsel zu beenden und seine eigene Sicherheitsidentität wiederherzustellen. Betrachten Sie beispielsweise einen primären Thread namens thread1, der von einem Remoteclient verteilt wird und einen Workerthread mit dem Namen thread2 reaktiviert. Wenn thread2 erfordert, dass der Server die Identität des Clients annimmt, ruft der Server RpcImpersonateClient(THREAD1_CALL_HANDLE) auf, führt die erforderliche Aufgabe aus, ruft RpcRevertToSelfEx(THREAD1_CALL_HANDLE) auf, um den Identitätswechsel zu beenden, und reaktiviert dann thread1.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile rpcdce.h (rpc.h einschließen)
Bibliothek Rpcrt4.lib
DLL Rpcrt4.dll

Weitere Informationen

Clientidentitätswechsel

RpcImpersonateClient

RpcRevertToSelf