2012-03-23 3 views
0

У меня IIS7 (Windows Server 2008) 64bit, но мое приложение работает в 32-битном режиме. Ms Office 2003 установлен на сервере. Я не могу найти {000209FF-0000-0000-C000-000000000046} в Сервисах компонентов, но я вижу {00020906-0000-0000-C000-000000000046}, и я также назначил для него все разрешения.ошибка: автоматизация слов

Если я применяю олицетворение, то вижу, что winword.exe * 32 в диспетчере задач и странице выполняется в течение длительного времени точно так же, как stick, no response/error. Я заметил, что страница идет клюшку/всегда выполняются с

'' Зачет и без ошибок с олицетворением

Dim WordApp As Microsoft.Office.Interop.Word.Application = New Microsoft.Office.Interop.Word.Application 

'' Зачет и без ошибок с олицетворением

Dim objDoc As Microsoft.Office.Interop.Word.Document = New Microsoft.Office.Interop.Word.Document 

'' С олицетворения, эта строка кода палочке страницы на длительный процесс - Documents.Open

objDoc = WordApp.Documents.Open(path) 

Что мне не хватает? Тот же код работал с 64-разрядным Windows Server 2003.

+0

Совет не использует автоматизацию Office в сервисе. Вам повезло, если это единственная ошибка, которую вы видели. См. Http://stackoverflow.com/questions/tagged/office-automation+asp.net –

ответ

3

Office Interop не предназначен для использования на стороне стороны. Microsoft имеет статью Knowledge Base на тему автоматизации Office на стороне сервера, которую вы, возможно, захотите прочитать.

Не зная, что вы пытаетесь использовать для взаимодействия, все, что я могу порекомендовать, это переключиться на использование Office OpenXML для вашей автоматизации терминалов. Если вы просто выполняете манипуляции с документами, это должно позволить вам сделать это. Для чего бы то ни было, я бы рекомендовал просмотреть предложения по переменам в статье, связанной с KB, которую я связал.


Если вы действительно должны есть a hack solution вашей проблемы

если вы создаете папку C:\Windows\SysWOW64\config\systemprofile\Desktop и C:\Windows\System32\config\systemprofile\Desktop может решить вашу проблему, но если вы можете, я бы высоко рекомендуют использовать OpenXML вместо ,

+1

Спасибо за ответ. Я должен прочитать документ .doc (Word 2003), используя программирование, которое не является OpenXML, поэтому я должен придерживаться interop/automation. Я уже создал папку рабочего стола в папке C: \ Windows \ SysWOW64 \ config \ systemprofile \ и C: \ Windows \ System32 \ config \ systemprofile \ –

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

  • Нет связанных вопросов^_^