Итак, я написал метод в продукте моей компании полтора года назад, который использует автоматизацию COM в Excel 2007 для экспорта данных, только теперь я обнаружил, что он больше не работает на машинах в офисе.
Я проверил функциональность метода на собственной машине и получил тот же результат.
Копая глубже, я обнаружил, что когда я добираюсь до
var excel = Excel.Application
Если я добавляю часы на объект Excel, я вижу, что каждое свойство выдаетисключение приведения.
После некоторых исследований я увидел кое-что о ключах реестра, которые могут помешать автоматизации.Мне удалось покопаться и удалить ключ реестра:
HKEY_CLASSES_ROOT\TypeLib{00020813-0000-0000-C000-000000000046}\1.7
Со следующим строковым значением, определенным в:
"PrimaryInteropAssemblyName"="Microsoft.Office.Interop.Excel, Version=14.0.0.0
Затем я снова запустил тот же кусок кода, только на этот раз он работал отлично.
Другие машины в офисе, на которых я тестировал приложение, имели ту же ошибку, только я не смог исправить их таким же образом.
Кто-нибудь еще сталкивался с этим раньше?Спасибо