如果我重新启动应用程序,为什么File.Exists()不再有效?

时间:2016-07-14 20:52:54

标签: c# .net clickonce

我有一个ClickOnce应用程序,需要确定是否存在excel文件,以决定是创建它还是写入它。

        Excel.Workbook workBook;
        if (File.Exists(fullFilePath)) {
            workBook = excelApp.Workbooks.Open(fullFilePath);
        } else {
            workBook = excelApp.Workbooks.Add(ApplicationDeployment.CurrentDeployment.DataDirectory + @"\" + TEMPLATE_NAME);
            workBook.SaveAs(path + "\\" + fileName, Excel.XlFileFormat.xlWorkbookNormal);
        }

这在第一次安装和使用应用程序时工作正常,但如果我重新启动应用程序,它将不再看到该文件(如果存在),导致SaveAs被执行并导致异常。例外是System.Runtime.InteropServices.COMException (0x800A03EC)

1 个答案:

答案 0 :(得分:0)

嗯,那太愚蠢了。当应用程序启动时,我不小心在文件名中添加了换行符,我没有注意到,因为文件名显示在单行文本框中...哦,男孩。