我正在寻找一种使用Delphi通过自动化保护powerpoint演示文稿的方法 在Word中,我可以发出以下命令:
If (WordDocument.ProtectionType = wdNoProtection)
Then WordDocument.Protect (3, VarTrue, VarProtectPass);
在Excel中,我可以发出以下命令:
{ If the file was NOT protected, then protect it }
For SheetIndex := 1 To ExcelWorkbook.Sheets.Count Do Begin
VarSheet := SheetIndex;
{ Connect to the work sheet }
ExcelWorksheet.ConnectTo (ExcelWorkbook.Worksheets.Item [VarSheet] As _Worksheet);
ExcelWorksheet.Protect ()...
问题是我找不到使用OfficeXP.pas组件执行此操作的方法。我们在各种系统上运行Office 2010。有什么想法吗?
我需要的是通过演示文稿打开powerpoint, 1)对于MenuItem1,禁止用户进行任何编辑。此外,不允许他们在其他地方重新保存它。 2)对于MenuItem2,允许用户编辑演示文稿。
答案 0 :(得分:0)
一种方法是通过一个捕获事件的加载项:
捕获PresentationBeforeSave事件,如果需要,取消保存。
捕获WindowSelectionChange事件,测试以查看所选内容(由事件传递),在大多数情况下,DE选择选择。如果用户无法选择某些内容,则无法对其进行编辑/更改。
可以根据状态变量启用/禁用事件处理例程;您可能会捕获PresentationOpen事件,测试新的演示文稿是否是您的“受保护”演示文稿之一,如果是,请设置boolIsProtected = True;您的其他事件处理程序可以测试此变量并停止处理事件,如果为False。