Automation 服务器上的Word自动化

Automation 服务器上的Word自动化,automation,ms-word,Automation,Ms Word,我们有一个要求,我们的web应用程序将进行邮件合并和 生成一些Word文档。当然,这是很容易做到的使用 Word自动化,但Microsoft不推荐使用 “Microsoft目前不推荐,也不支持, 从无人值守的环境中实现Microsoft Office应用程序的自动化, 非交互式客户端应用程序或组件(包括ASP, NET、DCOM和NT服务),因为Office可能表现出不稳定 在此环境中运行Office时的行为和/或死锁。“ 在这种情况下人们通常做什么?接受这个词 偶尔会挂断或寻求第三方解决方案

我们有一个要求,我们的web应用程序将进行邮件合并和 生成一些Word文档。当然,这是很容易做到的使用 Word自动化,但Microsoft不推荐使用

“Microsoft目前不推荐,也不支持, 从无人值守的环境中实现Microsoft Office应用程序的自动化, 非交互式客户端应用程序或组件(包括ASP, NET、DCOM和NT服务),因为Office可能表现出不稳定 在此环境中运行Office时的行为和/或死锁。“

在这种情况下人们通常做什么?接受这个词
偶尔会挂断或寻求第三方解决方案。

基本上您有三种选择:

  • 在服务器上运行它并接受这些后果。我从经验中知道事情确实会出错,但这取决于你正在做的任务的实时性和高优先级,这可能是你可以接受的。基本上,如果你必须这样做,尽量少做单词整合;如果只是一个邮件合并,那么99.9%的时间里你可能不会遇到任何问题
  • 使用第三方解决方案。但根据经验,除了非常简单的文件外,这些文件从来都不能很好地完成这项工作。例如,如果您正在谈论的内容将从服务器上的Word文档生成PDF,那么它将永远不会与Word中的内容相同
  • 不要直接调用Word,而是使用.NET自己操作文档。我甚至用VB6编写了一些操作Word/Excel2007文档的东西,因为它们都是文档非常丰富的XML格式。您必须使用2007格式,但它又快又好。但我认为,像邮件合并这样的事情必须手动进行,所以它可能不合适。此解决方案通常更适合于操作文档,而不是替换Word API函数
  • 根据我个人的经验,我做了第一个,效果很好,足以让我们的客户接受。我把第二个弄得一团糟,从来都不满意。我做了第三个,取得了巨大的成功(但做了不少工作)


    简言之,人们会根据成本(时间等)和可靠性来做各种事情:我建议选择1或2作为快速(但不太可靠)解决方案,或选择3作为更可靠(但成本较高)的解决方案。

    我使用自动化构建了一个Powerpoint应用程序。基本上,它是一个幻灯片库网站,可以打开多个文件并将幻灯片移动到模板中

    我遇到的第一个问题是安全性,我最终将应用程序设置为以管理员身份运行,这是不推荐的,大多数地方可能会对该操作表示不满。您需要具有自定义安全设置的灵活性

    我确实经历了一些我们从未追踪到的应用程序池崩溃,我相信我还必须让一个用户登录到远程桌面,但始终断开连接

    底线是,你可以让自动化工作,但它的黑客。如果你有灵活性,自动化是你最好的选择,那么就去做吧。否则我有两个想法

  • 探索开放式XML和
  • 研究在受信任的用户帐户上运行WCF服务。然后让您的网页调出或排队处理请求的作业 你能帮忙吗??