2013-07-31 99 views
0

我们可以使用'Officewriter'API创建密码保护的Excel工作簿或表单吗?我的要求是以编程方式创建pwd保护excel(c#),而不必在服务器上安装office。 我已经尝试过使用openXML,但是当密码保护该文件显示为已损坏,无法打开。 有人告诉我,'Officewriter'可以做到这一点。密码保护excel

回答

3

注意:我为OfficeWriter的制作人员SoftArtisans工作。

是的,可以使用OfficeWriter以编程方式密码保护Excel工作簿。

如果您使用我们的ExcelApplication API以编程方式操作工作簿,则可以保护工作簿和工作表。

Workbook.Protect(string)将使用提供的密码来保护工作簿的结构。例如,用户将无法添加或删除没有密码的工作表。

Worksheet.Protect(string)写保护工作表,以便用户无法在不输入密码的情况下在Excel中修改工作表。

ExcelApplication xla = new ExcelApplication(); 
Workbook wb = xla.Open("myWorkbook.xlsx"); 

wb.Protect("workbookPassword"); 
wb.Worksheets["Sheet1"].Protect("worksheetPassword"); 

xla.Save(wb, "myWorkbook_output.xlsx"); 

如果您正在使用我们的ExcelTemplate API将数据绑定到包含占位符标记的模板,你可以设置ExcelTemplate.EncryptPassword将加密使用RC4加密给定的密码簿。

ExcelTemplate xlt = new ExcelTemplate(); 
xlt.Open("template.xlsx"); 
... 
xlt.EncryptPassword = "MyPassword"; 
xlt.Process(); 
xlt.Save("output.xlsx");