0

我正在寻找一种使用 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,允许用户编辑演示文稿。

4

1 回答 1

0

一种方法是通过捕获事件的加载项:

捕获 PresentationBeforeSave 事件,如果需要,取消保存。

捕获 WindowSelectionChange 事件,测试以查看已选择的内容(由事件传递),并且在大多数情况下,DE-select 选择。如果用户不能选择某些东西,他们就不能编辑/更改它。

可以根据状态变量启用/禁用事件处理例程;您可能会捕获 PresentationOpen 事件,测试以查看新演示文稿是否是您的“受保护”演示文稿之一,如果是,则设置 boolIsProtected = True; 您的其他事件处理程序可以测试此变量并在为 False 时停止处理该事件。

于 2012-07-28T16:01:47.983 回答