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 for concluído com êxito, o parâmetro Reply apontará 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 que o servidor envie 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 ela não precisar mais delas.