我有很多Excel文件受一些已知密码保护。我想以编程方式取消保护它们。
我的问题是当我使用一些错误的密码打开文件时,它会显示密码对话框并等待用户输入。 DisplayAlerts = false; 不起作用。
如果我的密码错误,我如何避开密码对话框?有什么建议吗?
我目前的代码:
using Excel = Microsoft.Office.Interop.Excel;
bool TryUnprotectFile(string filePath, string trialPassword)
{
Excel.Application excelApp = new Excel.Application();
excelApp.DisplayAlerts = false;
// when password is wrong, then it waits here for user input:
Excel.Workbook wb = excelApp.Open(filePath, Password: trialPassword, IgnoreReadOnlyRecommended: true, Notify: false);
// ... further unprotecting code ...
// should return true when success, false otherwise
}