关于system.runtime.interopservices.comexception(0x800A1066)的问题

异常详细信息: System.Runtime.InteropServices.COMException: 命令失败

查询了网上的资料,同样是SaveAs2()方法在执行的问题,虽然最终解决了,但是怕忘记所以记录一下。

不过我的问题比较特殊,在第一次执行时没有问题的,但是第二次执行的时候,出现了该异常。调试时发现,只要实例了word.application对象和word.document对象,就会出现这些异常:

 

 ActiveWindow = “((Microsoft.Office.Interop.Word.ApplicationClass)app).ActiveWindow”引发了类型“System.Runtime.InteropServices.COMException”的异常 

 

 

 ActiveDocument = “((Microsoft.Office.Interop.Word.ApplicationClass)app).ActiveDocument”引发了类型“System.Runtime.InteropServices.COMException”的异常 

 

第一次却不影响运行,而第二次就在执行SaveAs2()时抛出异常。所以很不理解为什么,按网上类似的结果其中权限管理什么的都设置过,同样不起作用。

 

后来仔细想想,这些异常既然第一次不报错,也就没有管它,就想着试试在第一次打开文件之后,把该文件删除了看下有没有作用,由于,在项目中要显示该文件,所以一开始的代码写的不够规范,该文件一直被程序占有,后来加上using()之后,就删除成功了,之后再测试时,神奇第二次就没有抛出异常了,后来发现,就算没有删除生成的文件,加上using()同样也解决了问题。虽然不知道为什么但是谢天谢地,弄了几天了!

ps:using()不能加在word操作的代码里,我是在项目打开文件的里面加上。

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值