【问题标题】:What is required server-side to run Office Interops?在服务器端运行 Office Interops 需要什么?
【发布时间】:2014-10-06 20:10:03
【问题描述】:

我目前正在开发一个 MVC4 网站,并希望为以下内容添加与 MS Office 的互操作性:

Communicator 2007(仅限在线状态)。 Outlook(从最终用户的 Outlook 发送模板电子邮件)。 Excel(在 Excel 工作表中创建数据并保存。)

是否可以在不在托管服务器上安装 Office 的情况下使用 Office 互操作 API 执行这些操作?

是否有提供相同/相似功能的 Interop 替代品?

我了解所涉及的安全风险以及 Microsoft 不鼓励服务器端自动化。

【问题讨论】:

  • 要创建 Excel 文档服务器端,请查看 stackoverflow.com/questions/151005/… 我不会在服务器上使用 Office 互操作。 Office 无法无头运行,因此如果弹出对话框,您的线程将挂起。此外,它违反了 EULA。

标签: c# asp.net-mvc excel outlook


【解决方案1】:

不幸的是,互操作本身并没有真正实现任何 Office 功能,您仍然需要安装所需的 Office 应用程序。

我会考虑使用 SMTP 发送电子邮件,并使用 NPOI 满足您的 Excel 需求。这将避免在服务器上使用 Outlook 和 Excel。我不确定通信器。

【讨论】:

    【解决方案2】:

    有许多第三方库可以创建和读取 Excel 文件。 GemBox 和 EEPlus 是我想到的两个。

    Redemption 是一种用于 Exchange/Outlook 的 API,不需要安装 Office 本身(您只需安装 MAPI COM dll)。虽然它是 COM,所以要为这个 COM 互操作做好准备。

    至于通讯器... ???.

    【讨论】:

    • EEPlus 只是包装了 OpenXML,并没有真正提供任何额外的好处 IMO。只需使用 OpenXML
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-01-16
    • 2019-04-21
    • 1970-01-01
    • 2011-06-25
    • 2012-10-28
    • 2017-11-28
    • 1970-01-01
    相关资源
    最近更新 更多