2010-07-30 2 views
1

У меня есть веб-служба, которая считывает данные из Excel с помощью Microsoft.Office.Interop.Excel. Он отлично работает на моей локальной машине, но когда я загружаю его на сервер, он дает следующую ошибку:ошибка при открытии файла excel

Сервер не смог обработать запрос. ---> Извлечение фабрики COM-класса для компонента с CLSID {00024500-0000-0000-C000-000000000046} не удалось из-за следующей ошибки: 80070005.

i googled и попытался выполнить предложение DCOMCNFG-> services-> computers-> my computer-> com + appications, но потом я не могу найти Microsoft, чтобы изменить права. Office 2003 установлен на сервере и файл, который я пытаюсь открыть, - это тоже 2003 год. Пожалуйста, помогите !! Thanks

ответ

1

Вы не найдете Excel, вам нужно будет найти соответствующий CLSID и изменить разрешения активации/запуска.

Стандарт Отказ от ответственности: автоматическое выполнение офиса на сервере не рекомендуется Microsoft, но многие из нас делают это счастливо (включая меня).

+0

ok Я не очень хорошо знаком с этим. Вы можете более подробно объяснить, что мне нужно найти? Я не вижу CLSID. – medusa

+0

Когда вы перейдете в DCOM Config: Start | Run | dcomcnfg. Развернуть Службы компонентов | Мой компьютер | DCOM Config. Большой список загрузится, если вы перейдете вниз, вы увидите GUID, как вы упомянули в своем посте, - найдите {00024500-0000-0000-C000-000000000046} - когда вы его найдете, щелкните правой кнопкой мыши | свойства - перейдите на вкладку «Безопасность» - выберите «Пользовательские разрешения запуска и активации» - установите идентификатор, который вы хотите разрешить для запуска excel, как есть. Вы можете попробовать установить его на личность, в которой работает ваш пул приложений, я не знаю специфики вашей реализации, поэтому ... – kd7

+0

большое спасибо за ваш ответ, это помогло, я нашел его, но теперь я снова застрял , какого пользователя я должен добавить и предоставить разрешения? как найти пользователя, представляющего мое приложение, которое хочет запустить excel? только одна последняя помощь, пожалуйста. – medusa

Смежные вопросы