Recebendo a resposta assíncrona

Depois de ser notificado de que o servidor enviou uma resposta, o cliente chama RpcAsyncCompleteCall com o identificador assíncrono para que ele possa receber a resposta. Quando RpcAsyncCompleteCall tiver sido concluído com êxito, o parâmetro Reply aponta para um buffer que contém o valor retornado da função remota. Todos os buffers fornecidos pelo programa cliente como parâmetros [out] ou [in, out] para a função remota assíncrona contêm dados válidos. Se o cliente chamar RpcAsyncCompleteCall antes de o servidor enviar a resposta, essa chamada falhará e retornará um valor de RPC_S_ASYNC_CALL_PENDING.

Se o programa cliente usa portas de conclusão de E/S ou eventos para notificação, ele deve chamar CloseHandle para liberar a porta ou manipular quando não precisar mais delas.