工作中我们会使用到各种各样的文档,其中,PPT起着不可或缺的作用。一份PPT文档里可能包含重要商业计划、企业运营资料或者公司管理资料等。因此,在竞争环境里,企业重要资料的保密工作就显得尤为重要,而对于重要资料我们可以选择添加密码的形式来进行文档保护。本文将介绍如何通过C#来给PPT添加密码,当然你也可以根据需要来修改密码或者解除密码。下面将对三种操作方法进行具体讲述。

所用工具Free Spire.Presentation for. NET 3.3 (社区版)

Visual Studio 2013

工具使用说明:Spire.Presentation for .NET支持生成、写入、修改、转换、打印PPT等操作,这里我使用的是免费版的,使用前需要下载并安装,完成后需要添加引用dll文件到程序集中,同时也需添加using指令。

1.添加密码

 using Spire.Presentation;

 namespace Security_PPT
{
class Program
{
static void Main(string[] args)
{
//新建一个Presentation类实例,并加载需要加密的文档
Presentation presentation = new Presentation();
presentation.LoadFromFile(@"C:\Users\Administrator\Desktop\test.pptx");
//加密文件,设置打开密码并保存文档
presentation.Encrypt("test");
presentation.SaveToFile("encrypt.pptx", FileFormat.Pptx2007);
}
}
}

调试运行项目生成文件,如下图

打开文件,此时需要嵌入密码,正确输入密码后即可打开文档。

2.重置密码

 using Spire.Presentation;

 namespace ResetPassword_PPT
{
class Program
{
static void Main(string[] args)
{
//创建一个Presentation类实例并加载已加密的文档
Presentation presentation = new Presentation();
presentation.LoadFromFile(@"C:\Users\Administrator\Desktop\encrypt.pptx", FileFormat.Pptx2010, "test"); //解除原有密码,添加新密码
presentation.RemoveEncryption();
presentation.Protect("newtest"); //保存文档
presentation.SaveToFile("newresult.pptx", FileFormat.Pptx2010); }
}
}

同样的,调试运行程序生成文件

打开后输入新密码,这里可以选择可修改或者以只读方式查看文件

3.解除密码

上面描述的修改密码的方法中,若只是想解除密码而不新设置密码的话,只需删除掉添加新密码,即 presentation.Protect("newtest")这一行代码,调试运行后,生成的文档就没有密码保护了。

以上是对PPT文档进行加密、解密以及重设密码的操作,希望对你有所帮助。如果对你有用,欢迎转载(转载请注明出处)。

感谢浏览!

C# 实现对PPT文档加密、解密以及重置密码的操作的更多相关文章

  1. python 使用win32com实现对word文档批量替换页眉页脚

    最近由于工作需要,需要将70个word文件的页眉页脚全部进行修改,在想到这个无聊/重复/没有任何技术含量的工作时,我的内心是相当奔溃的.就在我接近奔溃的时候我突然想到完全可以用python脚本来实现这 ...

  2. IText实现对PDF文档属性的基本设置

    一.Itext简介 iText是著名的开放源码的站点sourceforge一个项目,是用于生成PDF文档的一个java类库.通过iText不仅可以生成PDF或rtf的文档,而且可以将XML.Html文 ...

  3. 【JAVA与DOM4J实现对XML文档的CRUD操作】

    一.简介 1.网上下载DOM4J 1.6.1压缩包,解压开之后,发现几个目录和一个jar文件,jar文件是必须的文件其它目录: docs目录:帮助文档的目录,单击index.html: Quick s ...

  4. jaxp实现对xml文档的增,删,改,查操作(附源码)浅析

    jaxp,属于javase中的一部分.是对xml进行解析的一个工具类: 既然说到这里,还是讲全一点,讲讲上面说到的xml的解析技术. xml的一个标记型文档. 在html的层级结构中,它会在内存中分配 ...

  5. XMLHelper类 源码(XML文档帮助类,静态方法,实现对XML文档的创建,及节点和属性的增、删、改、查)

    以下是代码: using System; using System.Collections.Generic; using System.Linq; using System.Web; using Sy ...

  6. 【爬坑】Vim 文档加密 & 解密

    0. 说明 在 Vim 使用过程中,最后保存的时候输入了 :X  ,提示输入密码,输完密码发现以前没遇到类似情况. 有时候最后保存那会儿默认大写. 在网上一查发现原来给文件加密了,就顺带搜索怎么取消密 ...

  7. word&excel&ppt文档加密方式

    ppt excel word

  8. openpyxl库实现对excel文档进行编辑(追加写入)

    首先,这个库只支持xlsx格式的excel文件 预期,对”excel_test.xlsx“的A1单元格写入”hello word“ 1.安装”openpyxl“库,pip install openpy ...

  9. C#向PPT文档插入图片以及导出图片

    PowerPoint演示文稿是我们日常工作中常用的办公软件之一,而图片则是PowerPoint文档的重要组成部分,那么如何向幻灯片插入图片以及导出图片呢?本文我将给大家分享如何使用一个免费版Power ...

随机推荐

  1. Redis配置参数详解

    Redis配置参数详解 /********************************* GENERAL *********************************/ // 是否作为守护进 ...

  2. Winform将一个窗体显示在另一个窗体中

    private void ShowForm(Form Indexform) { Form1 form1 = new Form1(); form1 .TopLevel = false; form1 .P ...

  3. JavaScript 获取完整当前域名

    <script> var dq_url = window.location.protocol+"//"+window.location.host;/*获取当前域名*/ ...

  4. C盘突然爆满

    C盘突然爆满!幸好还开的机!~~ 因为是突然就爆满了,想着应该是虚拟内存的原因!于是就开始了探索.... 1.文件夹选项中把所有文件都显示出来. 2.在C盘你就会看到一个“pagefile.sys”的 ...

  5. ABP入门系列(17)——使用ABP集成的邮件系统发送邮件

    ABP中对邮件的封装主要集成在Abp.Net.Mail和Abp.Net.Mail.Smtp命名空间下,相应源码在此. #一.Abp集成的邮件模块是如何实现的 分析可以看出主要由以下几个核心类组成: E ...

  6. Java线程中的同步

    1.对象与锁 每一个Object类及其子类的实例都拥有一个锁.其中,标量类型int,float等不是对象类型,但是标量类型可以通过其包装类来作为锁.单独的成员变量是不能被标明为同步的.锁只能用在使用了 ...

  7. 开源播放器 ijkplayer (六) :Android 下使用 ijkplayer 异常处理思路

    一. java.lang.IllegalStateException: mpjni: setOptionLong: null mp 根据已查到的资料看,目前是ijk内部的问题,只能通过try& ...

  8. module.exports与exports,export与export default之间的关系和区别

    首先我们要明白一个前提,CommonJS模块规范和ES6模块规范完全是两种不同的概念. CommonJS模块规范 Node应用由模块组成,采用CommonJS模块规范. 根据这个规范,每个文件就是一个 ...

  9. Kali学习笔记43:SQL盲注

    前面的文章都是基于目标会返回错误信息的情况进行判断是否存在SQL注入 我们可以轻易根据数据库报错信息来猜测SQL语句和注入方式 如果程序员做得比较好,不显示错误信息,这种情况下得SQL注入称为SQL盲 ...

  10. 机器学习入门17 - 嵌套 (Embedding)

    原文链接:https://developers.google.com/machine-learning/crash-course/embeddings/ 嵌套是一种相对低维的空间,可以将高维矢量映射到 ...