Função NdrStubForwardingFunction (rpcproxy.h)
A função NdrStubForwardingFunction é o ponto de entrada para métodos de objeto do lado do servidor definidos em uma interface base.
Sintaxe
void NdrStubForwardingFunction(
[in] IRpcStubBuffer *This,
[in] IRpcChannelBuffer *pChannel,
[in, out] PRPC_MESSAGE pmsg,
[out] DWORD *pdwStubPhase
);
Parâmetros
[in] This
Ponteiro para uma instância do objeto CStdStubBuffer, implementando IRpcStubBuffer, para a interface DCOM.
[in] pChannel
Ponteiro para IRpcChannelBuffer para a interface DCOM, geralmente fornecida pelo OLE.
[in, out] pmsg
Ponteiro para uma estrutura de RPC_MESSAGE que contém informações sobre a solicitação RPC.
[out] pdwStubPhase
Ponteiro para um sinalizador que rastreia a atividade da chamada do interpretador atual.
Retornar valor
Nenhum
Comentários
O parâmetro pdwStubPhase é usado pela interface do objeto para determinar o comportamento de tratamento de exceção. A tabela a seguir descreve os valores possíveis para o parâmetro pdwStubPhase .
Valor | Descrição |
---|---|
STUB_UNMARSHAL | O stub está em fase de marshalling. |
STUB_CALL_SERVER | O stub está chamando uma rotina de gerenciador de servidores. |
STUB_MARSHAL | O stub está em fase de unmarshalling. |
STUB_CALL_SERVER_NO_HRESULT | Obsoleto. Somente para stubs preteridos. |
Para métodos definidos em uma interface base, o RPC precisa encaminhar o código para a implementação da interface base.
Por exemplo:
Interface IFunctionSample: IUnknown
{
HRESULT FunctionSample();
}
Interface IOperation: IFunctionSample
{
HRESULT Operation();
}
Neste exemplo, em que IFunctionSample e IOperation são definidos em arquivos .idl diferentes. IFunctionSample é a interface base e IOperation é a interface derivada. A IOperation pode agregar IOperation sem implementar IOperation::FunctionSample. Quando o cliente chama IOperation::FunctionSample, no lado do servidor, o RPC encaminha a chamada para IFunctionSample:FunctionSample.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | rpcproxy.h |
Biblioteca | Rpcrt4.lib |
DLL | Rpcrt4.dll |