Ошибка с Excel и C# при выходе из системы сервера
Привет,
Я написал службу windows на C#, моя служба предназначена для открытия книги excel с поддержкой макросов (это в Excel 2010) я установил эту службу на наш сервер, который работает под управлением server 2008, он 64-разрядный. У моего сервиса, похоже, есть проблема с запуском Excel, когда никто не вошел на сервер, есть ли у кого-нибудь решение для этого.
я получаю следующую ошибку
System.Runtime.InteropServices.COMException (0x8000401A): Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046} failed due to the following error: 8000401a.
Excel установлен на сервере, служба работает нормально, когда я вошел на сервер, но как только все пользователи вышли из системы, я получаю вышеуказанную ошибку. я хотел бы, чтобы служба запускала мою рабочую книгу excel независимо от того, открыт ли сеанс на сервере или нет.
Rajesh Anuhya
Отредактировано для readbulity.
--РА
Herman<T>.Instance
какой пользователь запускает эту службу? Имеет ли этот пользователь достаточно прав для запуска excel?
RowenaReddy
Ну Digimanus thx вам за ваш ответ, я так думаю, но просто чтобы я знал, что делаю это правильно, как бы вы проверили, есть ли у пользователя достаточно разрешений?, я также попробовал то, что было упомянуто в обсуждении, на которое вы меня сослали, и изменил идентичность в свойствах конфигурации Dcom для приложения Microsoft excel, чтобы этот пользователь работал, но, к моему ужасу, наша компания не позволит этого, так как это не лучшая практика, поэтому я сейчас пытаюсь найти другой способ обойти это. Есть еще идеи?
Herman<T>.Instance
установить файл Excel в папке Мои документы пользователя, сервис использует. Тогда у него должны быть соответствующие права.