Fonction NdrStubForwardingFunction (rpcproxy.h)
La fonction NdrStubForwardingFunction est le point d’entrée pour les méthodes d’objet côté serveur qui sont définies dans une interface de base.
Syntaxe
void NdrStubForwardingFunction(
[in] IRpcStubBuffer *This,
[in] IRpcChannelBuffer *pChannel,
[in, out] PRPC_MESSAGE pmsg,
[out] DWORD *pdwStubPhase
);
Paramètres
[in] This
Pointeur vers un instance de l’objet CStdStubBuffer, implémentant IRpcStubBuffer, pour l’interface DCOM.
[in] pChannel
Pointeur vers IRpcChannelBuffer pour l’interface DCOM, souvent fournie par OLE.
[in, out] pmsg
Pointeur vers une structure RPC_MESSAGE qui contient des informations sur la requête RPC.
[out] pdwStubPhase
Pointeur vers un indicateur qui suit l’activité de l’appel d’interpréteur actuel.
Valeur de retour
None
Remarques
Le paramètre pdwStubPhase est utilisé par l’interface objet pour déterminer le comportement de gestion des exceptions. Le tableau suivant décrit les valeurs possibles pour le paramètre pdwStubPhase .
Valeur | Description |
---|---|
STUB_UNMARSHAL | Le stub est en phase de marshaling. |
STUB_CALL_SERVER | Le stub appelle une routine de gestionnaire de serveur. |
STUB_MARSHAL | Le stub est en phase de démarshallation. |
STUB_CALL_SERVER_NO_HRESULT | Obsolète. Pour les stubs dépréciés uniquement. |
Pour les méthodes définies dans une interface de base, RPC doit transférer le code à l’implémentation de l’interface de base.
Par exemple :
Interface IFunctionSample: IUnknown
{
HRESULT FunctionSample();
}
Interface IOperation: IFunctionSample
{
HRESULT Operation();
}
Dans cet exemple, où IFunctionSample et IOperation sont définis dans différents fichiers .idl. IFunctionSample est l’interface de base et IOperation est l’interface dérivée. IOperation peut agréger IOperation sans implémenter IOperation ::FunctionSample. Lorsque le client appelle IOperation ::FunctionSample, côté serveur, RPC transfère l’appel à IFunctionSample :FunctionSample.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau | Applications UWP] |
Plateforme cible | Windows |
En-tête | rpcproxy.h |
Bibliothèque | Rpcrt4.lib |
DLL | Rpcrt4.dll |