在网上查了一下,发现了几个不同的版本。主要为:
当出现“拒绝访问”或“服务器出现意外”问题时,进行如下处理:
你要将Microsoft Excel 9.0 Object Library引进.
如果你已经引进了,还需要这样设置一下
1。运行Dcomcnfg.exe
2。从列表中选择 microsoft Excel 文档
3。点击属性
4。选择“安全性”
5。选定“使用自定义访问权限”和“使用自定义启动权限”
6。分别编辑权限,添加ASPNET,VS Developers,Debugger User
7.选择“身份标识”,在选定“交互式用户” 即可
操作Excel的时候,可能会发生Excel进程被锁定,无法退出,解决方法是在保存完并关闭myBook(工作簿)后,别关闭Excel进程(//myApp.Quit();)。这样的结果是服务器上始终有一个Excel的进程。可能会出现asp_net用户操作Excel的权限不够,配置Dcom。运行Dcomcnfg.exe,找到Excel应用程序,配置其属性,身份验证级别选"无",身份标识选"交互式用户",安全性页面,启动和访问均给everyone。注意:查看当前进程中是否有Winword进程存在,如果有且不能被结束,那么重启动计算机。再次运行你的代码即OK。这样以后
就不会出现权限不够的情况了。
在命令行运行Dos命令:dcomcnfg
在[Application]项目下选择[Microsoft Excel应用程序],点击[属性]按钮,在应用程序属性对话框
下选择第三项[Security],在三个单选钮上都选择[Use custom access permission],分别点击下
面的[Edit]按钮,增加用户[Everyone](本级)和[ASPNET],并设置权限为[Allow Access]
总结:
在实际调试过程中我发现只要在安全性页面,启动和访问均给ASPNET,“身份标识”选定“交互式用户”即可通过调试。
补充:
在windows2003操作系统下通过以上方法是无法解决问题的。具体解决方法如下: