Ошибка чтения слова документа с помощью Micorsoft.Office.Interop (библиотека объектов) через IIS 7 - PullRequest
0 голосов
/ 03 января 2012

Возникла проблема при чтении документа при запуске кода из IIS.Он не читает документ и выдает ошибку «Нет документа при попытке сохранить активный документ».

 m_word.Documents.Open(ref FileName,
                                ref missing, ref readOnly, ref missing, ref missing,
                                ref missing, ref missing, ref missing, ref missing,
                                ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);


 m_word.ActiveDocument.SaveAs2(ref FileName_rtf, ref FileFormat, ref missing1, ref missing1,
                    ref missing1, ref missing1, ref missing1, ref missing1,
                    ref missing1, ref missing1, ref missing1,
                    ref missing1, ref missing1, ref missing1, ref missing1, ref missing1, ref missing1);

m_word.ActiveDocument выдает ошибку при запуске из IIS.Он работает в режиме отладки в Visual Studio.

Я также попробовал следующий код:

 Document doc_open =  m_word.Documents.Open(ref FileName,
                                ref missing, ref readOnly, ref missing, ref missing,
                                ref missing, ref missing, ref missing, ref missing,
                                ref missing, ref missing, ref missing, ref missing, ref missing, ref missing, ref missing);
            doc_open.Activate();

doc_open перезапускает ноль и выдает ошибку ссылки на объект во второй строке.это работает, когда код находится в режиме отладки.Ошибка возникает при запуске из IIS на сервере разработки, где у нас есть офисы IIS 7 и MS.

Ответы [ 3 ]

1 голос
/ 11 октября 2012

Добавить: C:\Windows\SysWOW64\config\systemprofile\Desktop

Это невероятно успешно.

0 голосов
/ 03 января 2012

Не делайте этого, это официально не поддерживается (выделено мной):

Microsoft в настоящее время не рекомендуется, а не поддерживает , Автоматизация приложений Microsoft Office из любого необслуживаемого, неинтерактивного клиентского приложения или компонента (, включая ASP, ASP.NET , DCOM и NT Services),потому что Office может демонстрировать нестабильное поведение и / или тупиковую ситуацию при запуске Office в этой среде.

Источник: MS KB 257757 .Статья также содержит список альтернативных решений.Если ничего не помогает, вам, возможно, придется обратиться к сторонней библиотеке, которая понимает формат Word.

0 голосов
/ 03 января 2012

может быть связано с настройкой безопасности, отметьте this http://support.microsoft.com/kb/257757/en-us. Не очень хорошая идея использовать взаимодействие на сервере, вы можете посмотреть другой вариант, например openxml sdk

...