Ответы с форумов MSDN

Использование Excel Interop в ASP.NET

Date: 09.03.2017 7:53:18

Возможно, учетная запись под которой запускается группа приложений не имеет необходимых прав. Попробуйте изменить учетную запись на другую или отредактировать разрешения файла. 

Message 897

Date: 10.03.2017 3:30:33

Какая версия Excel на настольном компьютере и на сервере? Какая версия библиотеки Interop.Excel? Файл открываете с сетевой папки или локальной?

Посмотрите диспетчер задач, может остались зависшие процессы Excel, которые держат файл.


Message 895

Date: 10.03.2017 7:56:32

А версия библиотеки Interop.Excel какая ? (это можно посмотреть в свойствах DLL-файла, вкладка Подробно)

Попробуйте на сервере Выполнить - "dcomcnfg" - Службы компонентов - Мой компьютер - Настройка DCOM. В списке посмотрите, есть ли "Приложение Microsoft Excel" ? Если есть, что установлено на вкладке "Удостоверение" в свойствах?

Message 894

Date: 10.03.2017 13:56:50

Не увидел ваше сообщение о том, как вы добавляете ссылку. Если вы добавляете "Excel 15.0 Object Library", то все должно быть правильно.

"В списке "Настройка  DCOM" "Приложение Microsoft Excel" нет!? "

Дополнение: на 64-разрядной системе, если используется 32-битный Excel, надо выполнить "MMC comexp.msc /32"

Если Excel действительно отсутствует в списке DCOM-серверов, может быть вы его установили но ни разу не запускали? Насколько я знаю он регистрируется при первом запуске.

Message 891

Date: 11.03.2017 14:18:06

То есть суть в том, что эти COM-объекты больше не работают из-под служб? Может тупо создать свое приложение (не-ASP.NET, обычное десктопное) которое будет генерировать отчеты и от давать их по HTTP на другом порту, и запускать его в локальном сеансе админа. А в основном ASP.NET приложении просто перенаправлять на этот порт.

OLE DB провайдер можно использовать и для генерации XLS-файлов, если форматирование не играет роли. Сделайте шаблон и командами INSERT вставляйте в него данные.

Если есть профессиональная версия SQL Server, можно также поднять сервер отчетов и использовать компонент ReportViewver.


Автор: VadimTagil

Главная страница - Список тем - Репозиторий на GitHub