在服务器上使用第三方独立组件对Word/Excel进行编程

简介:

很多人在开发环境下使用Microsoft.Office.Interop.Word或Microsoft.Office.Interop.Excel进行编程,并成功运行,部署到IIS或网站服务器上通常会收到这个错误:

"检索 COM 类工厂中CLSID为 {00024500-0000-0000-C000-000000000046}   的组件时失败,原因是出现以下错误:   8000401a"

“检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。”

  此时,只能在服务器上安装Office,并配置DCOM权限,步骤见:http://www.cnblogs.com/downmoon/archive/2009/01/16/1376702.html

  相当麻烦,而且服务器上安装Office本身就显得很另类,如果是托管或租用的服务器,更雪上加霜。

  其实,我以前也犯过类似的错误,后来,发现很多人还在跟我一样走老路,于是写下此文,以避免其他初学者走弯路。

  合理的解决方案是采用第三方的独立组件,这样做的好处是与服务器的配置无关。

 

     Word相关:

  1、Aspose.Word,这是一个组件集合中的一个,是商业软件,支持.Net(C#/VB.net)和Java

  官方站点:http://www.aspose.com/categories/product-family-packs/aspose.total-product-family/default.aspx

     2、OfficeWriter,这也是一个商业软件。

  官方站点:http://www.officewriter.com/

  谁发现有免费的开源组件,请通知我一声,感谢!当然,这个主要是针对Office 2003以下版本,Offcie 2007开始已采用Xml格式取代二进制格式存储数据。

  

  Excel相关:

  1、NPOI,开源、免费的强大Excel组件。

  官方网站:http://npoi.codeplex.com/

       http://www.cnblogs.com/tonyqus/archive/2009/03/16/1409966.html

  应用示例:http://www.cnblogs.com/downmoon/archive/2011/04/16/2017603.html

  2、MyXls,开源、免费的强大Excel组件。

  官方网站:http://sourceforge.net/projects/myxls/files/MyXls/

   应用示例:http://www.cnblogs.com/downmoon/archive/2011/05/30/2063258.html


本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2012/05/14/2499446.html,如需转载请自行联系原作者

目录
相关文章
|
缓存 监控 Java
Java Socket编程最佳实践:优化客户端-服务器通信性能
【6月更文挑战第21天】Java Socket编程优化涉及识别性能瓶颈,如网络延迟和CPU计算。使用非阻塞I/O(NIO)和多路复用技术提升并发处理能力,减少线程上下文切换。缓存利用可减少I/O操作,异步I/O(AIO)进一步提高效率。持续监控系统性能是关键。通过实践这些策略,开发者能构建高效稳定的通信系统。
603 1
|
9月前
|
安全
基于Reactor模式的高性能服务器之Acceptor组件(处理连接)
本节介绍了对底层 Socket 进行封装的设计与实现,通过 `Socket` 类隐藏系统调用细节,提供简洁、安全、可读性强的接口。重点包括 `Socket` 类的核心作用(管理 `sockfd_`)、成员函数的功能(如绑定地址、监听、接受连接等),以及 `Acceptor` 组件的职责:监听连接、接收新客户端连接并分发给上层处理。同时说明了 `Acceptor` 与 `EventLoop` 和 `TcpServer` 的协作关系,并展示了其成员变量和关键函数的工作机制。
200 2
|
Java API Apache
Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
【10月更文挑战第29天】Java编程如何读取Word文档里的Excel表格,并在保存文本内容时保留表格的样式?
1114 5
|
安全 Java 调度
Java编程时多线程操作单核服务器可以不加锁吗?
Java编程时多线程操作单核服务器可以不加锁吗?
315 2
|
Java 应用服务中间件 开发者
【实战指南】Java Socket编程:构建高效的客户端-服务器通信
【6月更文挑战第21天】Java Socket编程用于构建客户端-服务器通信。`Socket`和`ServerSocket`类分别处理两端的连接。实战案例展示了一个简单的聊天应用,服务器监听端口,接收客户端连接,并使用多线程处理每个客户端消息。客户端连接服务器,发送并接收消息。了解这些基础,加上错误处理和优化,能帮你开始构建高效网络应用。
854 10
|
IDE Java 开发工具
从零开始学Java Socket编程:客户端与服务器通信实战
【6月更文挑战第21天】Java Socket编程教程带你从零开始构建简单的客户端-服务器通信。安装JDK后,在命令行分别运行`SimpleServer`和`SimpleClient`。服务器监听端口,接收并回显客户端消息;客户端连接服务器,发送“Hello, Server!”并显示服务器响应。这是网络通信基础,为更复杂的网络应用打下基础。开始你的Socket编程之旅吧!
344 3
|
Java
Java Socket编程与多线程:提升客户端-服务器通信的并发性能
【6月更文挑战第21天】Java网络编程中,Socket结合多线程提升并发性能,服务器对每个客户端连接启动新线程处理,如示例所示,实现每个客户端的独立操作。多线程利用多核处理器能力,避免串行等待,提升响应速度。防止死锁需减少共享资源,统一锁定顺序,使用超时和重试策略。使用synchronized、ReentrantLock等维持数据一致性。多线程带来性能提升的同时,也伴随复杂性和挑战。
573 0
|
安全 Java 网络安全
Java Socket编程教程:构建安全可靠的客户端-服务器通信
【6月更文挑战第21天】构建安全的Java Socket通信涉及SSL/TLS加密、异常处理和重连策略。示例中,`SecureServer`使用SSLServerSocketFactory创建加密连接,而`ReliableClient`展示异常捕获与自动重连。理解安全意识,如防数据截获和中间人攻击,是首要步骤。通过良好的编程实践,确保网络应用在复杂环境中稳定且安全。
392 0
|
Web App开发 前端开发 安全
2024年新一代WebOffice内嵌网页组件,Web网页在线编辑Word/Excel/PPT
WebOffice控件面临兼容性、用户体验和维护难题。随着浏览器更新,依赖插件的技术不再适用,如Chrome不再支持NPAPI和PPAPI。产品普遍不支持多版本Office并存,定制能力弱,升级复杂。猿大师办公助手提供了解决方案,它兼容多种浏览器,包括最新版和国产浏览器,不依赖插件,支持文档对比,具有丰富的功能和接口,兼容多种Office版本,允许源码级定制,提供终身技术支持,并实现静默在线升级。适用于多种行业和操作系统。
1265 110
|
IDE 开发工具 数据安全/隐私保护
Python编程--实现用户注册信息写入excel文件
Python编程--实现用户注册信息写入excel文件
129 1