2015-09-17 2 views
-1

Я использовал MS Interop 2010 DLL в проекте ASP.Net для генерации слова и excel docuement. Но на сервере сервера развертывания есть офис 2003.Могу ли я использовать microsoft interop dll 2010 на компьютере с MS-Office 2003

Мое беспокойство заключается в том, что MS Interop DLL 2010 будет работать с MS-Office 2003 или установить MS-Office 2010?

ПРИМЕЧАНИЕ. При разработке в среде я установил MSOffice 2010 и MS Interop 2010 работает хорошо.

Заранее спасибо.

ответ

0

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

+0

Это ложь. Нет необходимости устанавливать соответствующую версию Office. Вы можете создавать программное обеспечение даже без установленного Office. –

+0

На мой взгляд, это правда. Вы не можете запустить какой-либо метод, который использует interops. Это означает, что вы не можете протестировать свое программное обеспечение в среде разработки. Так что это не совсем так, но и не совсем неправильно. – BendEg

0

Нет необходимости устанавливать соответствующую версию Office или interops. Вы можете использовать последние библиотеки interop для старых версий Office, пока не будете использовать отсутствующих членов. Например, в Office 2010 был введен метод, и вы пытаетесь вызвать его в Office 2003. В этом случае вы получите исключение во время выполнения. Поэтому я бы рекомендовал проверить версию Office во время выполнения и только потом вызвать новых членов или нет.

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

Если вы создаете решение, которое выполняется в контексте на стороне сервера, вы должны попытаться использовать компоненты, которые были безопасны для автоматического выполнения. Или вы должны попытаться найти альтернативы, которые позволяют хотя бы часть кода запускать клиентскую сторону. Если вы используете приложение Office из серверного решения, для успешного выполнения приложения не будет достаточного количества необходимых возможностей. Кроме того, вы рискуете стабильностью своего общего решения. Подробнее об этом читайте в статье Considerations for server-side Automation of Office.

В качестве обходного пути вы можете использовать Open XML SDK, см. Welcome to the Open XML SDK 2.5 for Office для получения дополнительной информации. Или просто используйте сторонние компоненты, предназначенные для выполнения на стороне сервера.

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