System.Runtime.InteropServices.COMException (0x800706BE) при получении contact.LastName

Некоторые из наших пользователей иногда получают это исключение (не для каждого контакта):

System.Runtime.InteropServices.COMException (0x800706BE): 
   The remote procedure call failed. (Exception from HRESULT: 0x800706BE)
   at Microsoft.Office.Interop.Outlook._ContactItem.get_LastName()

Это происходит, когда мы пытаемся получить фамилию контакта (типа ContactItem).

Кто-нибудь знает, в чем проблема?

Любая помощь будет оценена по достоинству. Спасибо!


person Andrei    schedule 17.12.2010    source источник
comment
Привет, Андрей, можешь опубликовать код.   -  person Ikaso    schedule 17.12.2010


Ответы (2)


Это ошибка Windows, код объекта 7. Последнее слово дает ошибку Windows, 0x6be == 1726:

// MessageId: RPC_S_CALL_FAILED
//
// MessageText:
//
// The remote procedure call failed.
//
#define RPC_S_CALL_FAILED                1726L

Взаимодействие с программами Office, такими как Outlook, происходит через COM вне процесса. RPC — это низкоуровневый механизм удаленного вызова процедур. Есть несколько причин, по которым такой удаленный вызов не может быть выполнен. И код ошибки, и название ошибки хорошо гуглятся.

Самое простое объяснение — просто упал Outlook. Что происходит. Преимущество внутрипроцессного взаимодействия заключается в том, что при сбое основной программы она также удаляет ваш код. Не во внепроцессном сценарии, вы просто получаете трудно диагностируемую ошибку. Попросите ИТ-персонал вашего клиента использовать их типичные стратегии устранения неполадок Office.

person Hans Passant    schedule 17.12.2010
comment
Если вы попали сюда из-за Excel Interop, это, вероятно, из-за подключаемого модуля FoxitReader PDF Creator COM, см. /а> - person hellyale; 22.06.2017

установить полный доступ к сетевым службам (или идентификатору пула приложений) в папку C:\Windows\System32\config\systemprofile\AppData

С Уважением! Габриэль из Аргентины

person Gabriel    schedule 28.02.2016