Я использую следующие команды для остановки сервера RPC
RPC_STATUS status;
while(RpcMgmtWaitServerListen() != RPC_S_NOT_LISTENING)
status = RpcMgmtStopServerListening(NULL);
RPC_BINDING_VECTOR *binding_vector;
status = RpcServerInqBindings(&binding_vector);
if (status)
{
throw std::exception("RPC ERROR!");
}
status = RpcEpUnregister(Comms_v1_0_s_ifspec,binding_vector,NULL);
if (status)
{
throw std::exception("RPC ERROR!");
}
status = RpcBindingVectorFree(&binding_vector);
if (status)
{
throw std::exception("RPC ERROR!");
}
Когда я вызываю оператор RpcEpUnregister
, он заканчивается на , не может выполнить операцию при ошибке конечной точки .
если я использую следующий код для остановки сервера
RPC_STATUS status;
while(RpcMgmtWaitServerListen() != RPC_S_NOT_LISTENING)
status = RpcMgmtStopServerListening(NULL);
status = RpcServerUnregisterIf(NULL,NULL,FALSE);
при перезапуске сервера RpcServerUseProtseqEp
выбрасывает конечную точку Конечная точка является дубликатом
независимо от того, сколько я пытаюсь запустить код RpcServerUseProtseqEp
он все тот же.