Сбой компонента COM - PullRequest
0 голосов
/ 22 июня 2010

Если у вас есть программное обеспечение, которое запускает COM-сервер, работающий вне процесса, и COM-сервер падает, он покажет пользователю сообщение (скажем, необработанное исключение) или что произойдет?

Кроме того, будет ли сбой COM-клиента, зная, что этот клиент в значительной степени зависит от этого COM-сервера?

Каково поведение в отношении COM-сервера и COM-клиента при возникновении необработанного исключения на сервере?

1 Ответ

3 голосов
/ 22 июня 2010

COM-клиент получит RPC_E_SERVERFAULT как HRESULT от следующего COM-вызова и все остальные, пока сервер не будет перезапущен. Это не обязательно приведет к сбою, если клиент проверяет свои коды ошибок. Однако это, вероятно, не исправимая ошибка для клиента, поэтому после получения RPC_E_SERVERFAULT (или, на самом деле, любого кода ошибки RPC_E) вам, вероятно, следует инициировать постепенный выход.

...