У меня есть клиент-серверное приложение, которое использует RPC для связи клиента с сервером.
Довольно регулярно я получаю в журнале приложений событие о разрыве RPC-соединения:
Client callback failed ((0x80010108) )
У меня на обеих машинах отключен брандмауэр Windows. Я даже запустил клиент на втором компьютере с чистой установкой Windows XP без каких-либо групповых политик.
Это происходит уже давно, и никто не может понять, почему это происходит. То же клиент-серверное приложение отлично работает в других клиентских местоположениях.
Есть предположения?
Это потребует устранения неполадок.
Я бы начал с Wireshark или Netmon отслеживание сетевого трафика и сопоставление захвата с моментом возникновения ошибки, чтобы увидеть, не возникает ли что-нибудь интересное. Вы также можете прочитать следующую статью из журнала TechNet Magazine: Устранение ошибок RPC.
Цитировать из этот документ:
Ошибка DCOM 108
Rockwell Automation и Microsoft тесно сотрудничали с некоторыми из наших общих клиентов, чтобы выявить и исправить ошибку DCOM 108, в результате чего было выпущено обновление Microsoft для затронутых операционных систем Microsoft.
Обновление для всех затронутых операционных систем Windows доступно напрямую через службу поддержки Microsfot через http://support.microsoft.com/kb/924432.
Обновленный код будет включен в Windows Server 2003 SP2.
Письмо похоже соответствует тому, что с вами происходит.
Я бы сделал элементарное устранение. Попробуйте каждый из следующих шагов по отдельности, пока ошибка не исчезнет.
Wireshark, вероятно, может предоставить вам много информации, но если вы не знаете, как анализировать данные, это может быть ошеломляющим.