C # Удалить пароль из защищенного паролем (зашифрованного) файла Excel, используя пароль файла - PullRequest
0 голосов
/ 28 января 2019

Я пытаюсь открыть защищенный паролем файл Excel (версии xls, xlsx, xlsm).Мне нужно открыть файлы и удалить пароль от каждого файла.У меня есть все пароли для файлов, которые должны быть обработаны.

Я не могу использовать Microsoft Interop Excel, так как для этого должна быть установлена ​​программа Excel на сервере.Я уже использую Aspose.Cells, чтобы открыть файлы, не защищенные паролем.Но я хочу иметь возможность сохранить файл, перезаписав его без пароля.

Кто-нибудь есть какие-либо предложения?Заранее спасибо

Код пока

public static void RemovePassword(string filePath, string password){
  LoadOptions loadOptions = new LoadOptions();
  loadOptions.Password = password;

  Workbook src = new Workbook(filePath, loadOptions);
  //need a way of removing the password from the file.
}

Ответы [ 2 ]

0 голосов
/ 28 января 2019

Спасибо за ваш ответ, я заметил, что ваше первое предложение только защищает структуру рабочих книг.

workbook.Unprotect(password);

В моем случае я хочу дешифровать фактический файл, который защищен паролем (зашифрован)

Второе предложение прекрасно работает, спасибо!

 workbook.Settings.Password = "";
 workbook.Save(filePath);

Еще раз спасибоза вашу помощь

0 голосов
/ 28 января 2019

Вы можете использовать метод Снять защиту Рабочей книги:

LoadOptions loadOptions = new LoadOptions();
loadOptions.Password = password;

Workbook workbook = new Workbook(filePath, loadOptions);
workbook.Unprotect(password);
// or workbook.Settings.Password = "";
workbook.Save(filePath);
...