Работа с Word в ASP.net - документ не добавляется

Статус
Закрыто для дальнейших ответов.

manix

New Member
Регистрация
04.06.2008
Сообщения
6
Добрый день!
помогите пожалуйста разобраться.
Есть ASP.net Web-проект. Он содержит код для теста работы Word:

using Word = Microsoft.Office.Interop.Word;
[............]
object missing = System.Reflection.Missing.Value;
Word.ApplicationClass uWordApp = new Word.ApplicationClass();
Word.Document uWordDoc = uWordApp.Documents.Add(ref missing, ref missing, ref missing, ref missing);
uWordDoc.Activate();
uWordDoc.Close(ref missing, ref missing, ref missing);
uWordApp.Application.Quit(ref missing, ref missing, ref missing);

на трех компьютерах данный фрагмент кода не вызывает ошибок.
На четвертом же (его параметры и версия Office (2003 SP3) совпадают с остальными) вылетает ошибка: Object reference not set to an instance of an object.
выснил, что ошибка вылетает на строчке uWordDoc.Activate() что uWordDoc равен null.

Почему такое может происходить? В каких случаях Word-приложение не может добавить документ?
 

manix

New Member
Регистрация
04.06.2008
Сообщения
6
Неужели ни у кого такой проблемы не было???

Дал права для юзера NETWORK SERVICE (именно от лица этого пользователя на Windows 2003 Server работает ASP.net) на:
1. DCOM-компоненту "Document Microsoft Word" дал и на Запуск и Активацию, и на доступ.
2. Дал права на доступ к файлу winword.exe на всякий пожарный.
3. Дал права на доступ к каталогу "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files"

Пробовал также перерегистрировать ASP.net с помощью aspnet_regiis.exe /u и aspnet_regiis.exe /i.

Давал доступ к метабазе IIS aspnet_regiis -ga NETWORK SERVICE

Не помогло. :unsure: Такая беда именно на Windows 2003 Server. На WIndows XP и Windows 2000 все работает как часы.
Что делать, коллеги?
 

manix

New Member
Регистрация
04.06.2008
Сообщения
6
Проблема решилась вот как (нашел на одном из сайтов, пока рыл в поисках решения):

"In the composants services console (run : dcomcnfg, sorry for translation I'm french ...
) deploy DCOM tree and find Microsoft Word Document. Right click on it and select identitie tab. Choose 'this user' and select the administrator account."

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