区分Excel中的错误路径和已取消的输入.Workbook.SaveAs()

时间:2013-04-04 20:26:54

标签: office-interop excel-interop

在我的应用程序中,我以编程方式创建一个Excel文件,然后保存到预定路径。在一个(可能是常见的)实例中,该文件可能已经存在,并且SaveAs()弹出一个对话框,询问用户是否要覆盖或取消。另一个(不太可能,但实际上刚刚发生)选项是文件通常保存到DNE的目录。取消“覆盖?”对话框和错误的路径名都会引发System.Runtime.InteropServices.COMException == 0x800a03ec的ErrorCode异常。我想区分这两种情况,这样我就可以默默地取消,或者给用户另一个机会将文件分别保存在别处。我在异常中看不到任何其他信息会给我更多信息。还有其他地方吗?

1 个答案:

答案 0 :(得分:0)

我最终测试了该文件是否存在,如果不存在,那么我会抛出一个SaveFileDialog窗口让用户选择一个有效的位置。