C# 尝试保存Excel工作簿时未处理COMException

C# 尝试保存Excel工作簿时未处理COMException,c#,.net,windows,excel,C#,.net,Windows,Excel,我正在尝试创建一个Excel工作簿并将其保存到我的桌面上,目前为止,我的C代码如下: 在我试图保存工作簿实例的最后一行发生的错误。Visual Studio说:“WikiScrapData.exe中发生“System.Runtime.InteropServices.COMException”类型的未处理异常。”。我查看了MSDN和其他来源,但未能解决该问题 如何正确保存此Excel工作簿?您在项目中使用了吗?@Hackerman不,只是命名上的巧合。目前我唯一能想到的是,它不喜欢您保存它的位置。

我正在尝试创建一个Excel工作簿并将其保存到我的桌面上,目前为止,我的C代码如下:

在我试图保存工作簿实例的最后一行发生的错误。Visual Studio说:“WikiScrapData.exe中发生“System.Runtime.InteropServices.COMException”类型的未处理异常。”。我查看了MSDN和其他来源,但未能解决该问题


如何正确保存此Excel工作簿?

您在项目中使用了吗?@Hackerman不,只是命名上的巧合。目前我唯一能想到的是,它不喜欢您保存它的位置。尝试一些更简单的方法,比如
@“C:\Temp\TestFile.xlsx”
。如果这样做有效,它会给你一个解决方案的提示。@IInspectable:你是正确的,但是.NET framework也接受这两个选项,所以这不是问题的根源。@Frecklefoot:the
工作簿
是一个COM对象。即使.NET接受这两个字符作为路径分隔符(我对此表示怀疑,但我懒得检查引用源),这也无关紧要。NET不转换传递给本机COM对象的路径参数。您在项目中使用了吗?@Hackerman不,只是命名上的巧合。目前我唯一能想到的是,它不喜欢您保存它的位置。尝试一些更简单的方法,比如
@“C:\Temp\TestFile.xlsx”
。如果这样做有效,它会给你一个解决方案的提示。@IInspectable:你是正确的,但是.NET framework也接受这两个选项,所以这不是问题的根源。@Frecklefoot:the
工作簿
是一个COM对象。即使.NET接受这两个字符作为路径分隔符(我对此表示怀疑,但我懒得检查引用源),这也无关紧要。NET不会转换传递给本机COM对象的路径参数。
   using System
   using System.Net
   using Microsoft.Office.Interop.Excel;

   //LAUNCH AND TEMPLATE EXCEL
   Microsoft.Office.Interop.Excel.Application xlApp = new Microsoft.Office.Interop.Excel.Application();
   Workbook wb = xlApp.Workbooks.Add();
   Worksheet ws = (Worksheet)wb.Worksheets[1]
   ws.Cells[1, 1] = "Report Date";
   ws.Cells[1, 2] = "Catagories";
   ws.Cells[1, 3] = "Page Name";
   ws.Cells[1, 4] = "Last Revision Date";
   ws.Cells[1, 5] = "Beginning Total";
   ws.Cells[1, 6] = "Ending Total";
   ws.Cells[1, 7] = "Monthly Total";
   ws.Cells[1, 8] = "YTD";
   //LAUNCH AND TEMPLATE EXCEL

   wb.SaveCopyAs("C:/Users/pta72645/Desktop/TestFile5_2.xlsx"); //save Excel, **ERROR OCCURS HERE**