你的位置:首页 > ASP.net教程

[ASP.net教程](Excel导出失败)检索COM类工厂中CLSID为{00024500


在DCOM 中不存在WORD、EXCEL等OFFICE组件

 

最近在做一个关于office转存PDF的Web项目。开发过程一切顺利。

起初在网上找到一些Word,PPT转PDF的代码。很好用。一切顺利项目开发成功。在这里需要说明一点,PPT中会存在流媒体内容,如果存在这些内容的时候是不能成功转换为PDF的。需要手动将相关内容删除后才可以转换。各位如果遇到些奇怪的问题的时候,希望检查下PPT中是不是存在这些内容。

项目开发结束,问题就来了。因为需要搭建测试环境。就拿手边一台防止的机器搭建了测试环境。WindowsXP+SP3、Office2010+.net开发包、.Net 4.0很顺利搭建完成。自己简单测试一下,没有问题。因为项目比较简单,没有什么特殊的逻辑。所以测试也很快通过了。

问题来了:

一周后项目演示,所以在自己的开发本本上搭建环境给客户演示。我的本本是Windows7 Professional+SP1,开发环境若干。直接安装好IIS7,将项目放到上面,发布依然很顺利。

打开网页,很漂亮的程序界面来了。登陆,OK;浏览附件,OK;上传附件,爆了。心里一惊怎么会这样呢?根据自己经验,这个是因为权限的问题,IIS用户不能使用office组件。只需要在DCOM里面调整下权限就ok了。

于是很从容的打开Component Services。一步一步的进行。走到最后的时候发现,DCOM里面竟然没有与office相关的所有组件。这下就乱了。想是不是因为office安装的问题呢?于是找出office2010安装盘,先卸载再安装……漫长的等待,终于安装完成了。依旧没有显示在里面。无数次的重启,还是没有显示在里面。

继续上网查资料,Google没有相应的结果,Baidu的结果更是答非所问。这个时候距给客户演示还有不到1天的时间,数据还没有添加。现在还遇到这样的问题!心都酥了。

——

各种查,各种找。

MMC进入到我的视线里面。通过这个终于解决此问题了。先简单说下,操作步骤(项目演示完成后,补上图):

  1. Run

  2. MMC -32

  3. File

  4. Add Remove Snap-in

  5. Component Services

  6. Add

  7. OK

  8. Console Root

  9. Component Services

  10. Computers

  11. My Computer

  12. DCOM Config

  13. Microsoft Word Application

没错,看到了。终于松了口气。具体怎么设置DCOM权限,网络上很多。就不再多做描述了

(Excel导出失败)检索COM类工厂中CLSID为{00024500-0000-0000-C000-000000000046}的组件时失