我想在WPF中保存一个受密码保护的Excel文件,其中通过Microsoft Interop
更改了1个单元格。
我试图做的是,在禁用了只读模式的情况下打开Excel文件。我尝试通过编写以下代码来实现它:
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open(excelFilename, Type.Missing, false, Type.Missing, password, password, true, Type.Missing, Type.Missing, true, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
[请忽略与密码有关的任何安全性问题,因为此代码仅用于说明目的。
.Open()
方法中的第三个参数指定ReadOnly
对象,该对象设置为false。.Open()
方法中的第七个参数指定IgnoreReadOnlyRecommended
对象,该对象设置为true。通过这样做,我本以为可以在不启用只读模式的情况下打开Excel文档,但事实并非如此。
我还通过编写以下代码来禁用通常向用户显示的Excel警报:
xlApp.DisplayAlerts = false;
每次运行这段代码:
xlWorkbook.SaveAs(excelFilename);
我收到以下异常:
system.runtime.interopservices.comexception 'cannot access read-only document...'
我想在WPF中保存一个受密码保护的Excel文件,其中通过Microsoft Interop更改了1个单元格。我试图做的是打开带有只读模式的Excel文件。我尝试过...
您的代码正确。