Amit Roy Ответов: 1

Ошибка Microsoft. interop при размещении в IIS


У меня возникла следующая ошибка при размещении Asp.Net веб-приложение в IIS 6.0

---------
Получение фабрики COM-класса для компонента с CLSID {00024500-0000-0000-C000-000000000046} не удалось из-за следующей ошибки: 80070002 система не может найти указанный файл. (Исключение из HRESULT: 0x80070002).
---------

Что я уже пробовал:

Я перепробовал все решения, размещенные здесь и там через google, но ни один из советов на самом деле не сработал для меня.
Я буду признателен, если кто-нибудь сможет опубликовать пошаговое решение этой проблемы.

Требуется ли для этого лицензионная версия Microsoft Office 2007?

[no name]

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

Philippe Mori

Хорошо известно, что Office interop не должен использоваться на сервере. Он не предназначен для этой цели, и даже если вы заставите его работать, это будет очень медленно. Тем не менее, если вы не прислушаетесь к общим советам, вам все равно придется купить лицензию на этот компьютер. Не ожидайте, что это будет возможно, если вы используете общий хостинг. Кстати, есть много альтернатив. Один из них-Open XML SDK.

Richard Deeming

Google считает, что CLSID связан с Excel. Если это так, то вам нужно будет переписать свой код, чтобы использовать библиотеку, которая не полагается на Office Interop-например:

* EPPlus[^];
* ClosedXML[^];
* ExcelDataReader[^];
* SDK OpenXML[^];

Если это другое офисное приложение, которое вы пытаетесь автоматизировать, вам нужно будет найти другой способ сделать это.

1 Ответов

Рейтинг:
9

F-ES Sitecore

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


Richard Deeming

Возможно, стоит сослаться на статью MS KB, которая поддерживает это:
Соображения по автоматизации работы офиса на стороне сервера[^]
В настоящее время корпорация Майкрософт не рекомендует и не поддерживает автоматизацию приложений Microsoft Office из любого автоматического, неинтерактивного клиентского приложения или компонента (включая ASP, ASP.NET, DCOM и NT Services), поскольку Office может демонстрировать нестабильное поведение и / или взаимоблокировку при запуске Office в этой среде.