导出Excel时发生错误

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

具体解决方法如下:

1、在服务器上安装office的Excel软件。

2、在"开始"->"运行"中输入dcomcnfg,启动"组件服务"

3、“组件服务”窗口中找到,"组件服务"->"计算机"->"我的电脑"->"DCOM配置" ,再在"DCOM配置"中找到"Microsoft Excel 应用程序",右键->属性,弹出"Microsoft Excel 应 用程序属性"对话框,对话框中设置以下几点:

(1)"标识"标签,选择"交互式用户" ,

(2)"安全"标签,在"启动和激活权限"上点"自定义",添加“NETWORK SERVICE”用户,并给它赋予"本地启动"和"本地激活"权限.

(3)"安全"标签,"访问权限"上点击"自定义",添加“NETWORK SERVICE”用户,赋予"本地访问"权限。

这样我们便配置好了相应的Excel的DCOM权限

注意:这是在WIN2003上配置的,在2000上,可能是配置的是ASPNET用户。

 

以上方法仅适用在32位系统下,如果是win7或win2008的64位系统,设置方法如下

1、在"开始"->"运行"中输入dcomcnfg -32,启动"组件服务" (注意:这里要加 -32 参数,否则看不到Microsoft Excel Application项)

2、同上面步聚(3)一样的设置

3、在IIS7.5中,选择网站对应的应用程序池中的“高级设置”,在出现的对话框“进程”一节中的“标识”一项,改为“NetworkService”,确定保存。

 

posted @ 2011-11-22 21:30 Allen Zhang 阅读(30) 评论(0) 编辑

因为要动态填加表格行,于是我用了jquery下的append(text)函数,为了代码排版美观,我在里面加入了相应的空格,因此引来了一场悲剧。

$("#tableId").append(" <tr><td>&nbsp;</td></tr> ");

以上语句在IE8、Chrome等浏览器下正常工作,但是在IE6下不正确,点击添加行时无效,也没有提示错误。

绕了一个大圈,查了很多地方,甚至将jquery升级为最新版本都不能解决问题。

后来无意中将代码里面用于排版的空格去掉,奇迹就这么发生了,问题解决,真是坑爹啊。

正确的代码为: 

 $("#tableId").append("<tr><td>&nbsp;</td></tr>");


posted @ 2011-11-22 13:31 Allen Zhang 阅读(19) 评论(0) 编辑