原文地址:http://www.cnblogs.com/name-lh/archive/2007/04/29/732620.html

 

 

教您怎样在C#中锁定Word内容,还教您怎样把人家的锁定内容破解了

       在C#中如何操作Word文档的文章一大箩框,我也来凑凑热闹,不过,我不想写太多,否则,看官,等您看完本搏,发现相当什么都没说一样,嘘——,闪砖头先!

      总是有一些Word文档,比如正式的公文,签字的文件等等,创建者在写完文档之后,总是给文档来一把锁。注意,我这里所说的锁不是打开文档的时候输入密码的那种锁,而是可以让您正常打开,但是不能修改里面文字内容,不能删除里面的文字内容,不能调整文档的格式,甚至不能复制粘贴内容,另存为另外的文件也还是依旧的那种锁(光看着着急,想做点坏事都不行)。

       下面我来教教您怎样在C#中实现这样的功能,学会这招,也许哪天您也能Show一把。实现非常easy:

public void LockWordContent(string FileName, string ProtectPWD)
{
            Microsoft.Office.Interop.Word.Application Ap = new Application();
            Ap.Visible = false;   
object objFileName = FileName;
object obj = Type.Missing;
//打开Word文档
            Microsoft.Office.Interop.Word.Document Doc = Ap.Documents.Open(ref objFileName,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj,
ref obj);

//下面对文档里面的内容进行各种操作操作
//……

//操作结束,保存之前对文档进行内容锁定
            Object objProtectPWD = ProtectPWD;   //锁定的密码
            Object NoSet = null;
            Doc.Protect2002(WdProtectionType.wdAllowOnlyFormFields, ref NoSet, ref objProtectPWD);

            Doc.Save();

//后面关闭Doc对象等等
//……
        }

       看着您成功的把Word文档加锁,您也许坏坏的邪笑,(*^__^*) 嘻嘻……
       慢着!下面的方法可以破解您的所有锁定,不管是代码实现的锁定还是在Word本身中实现的锁定。您不是只能看,不能改不能删么?这样做:
1、关闭被锁定的文档A.DOC
2、新建一个Word文档B.DOC
3、在文档B.DOC中,依次打开菜单“插入--对象--文件中的文字”(我是office2007版本,2003也一样)
WOO double!怎么啦,A文档中所有的内容被插入到B文档中了咧。有没有提示问要密码的?没有,而且可以随意改动,嘿嘿,内容被取出来了,想干什么还不可以么?%*!~&(&%……
又是砖头,我闪!

C#中锁定Word内容,样把人家的锁定内容破解了的更多相关文章

  1. 如何在浏览器网页中显示word文件内容

    如何在浏览器网页中显示word文件内容 把word文件读到byte[]中,再Response.OutputStream.Write(bytes)到客户端去 Page_Load事件中写: //FileS ...

  2. C# 复制一个Word文档的部分或全部内容到另一个Word文档

    C# 复制一个Word文档的部分或全部内容到另一个Word文档 我最近喜欢折腾Office软件相关的东西,想把很多Office软件提供的功能用.NET来实现,如果后期能把它用来开发一点我自己的小应用程 ...

  3. 如何在程序中给word文档加上标和下标

    如何在程序中给word文档加上标和下标 上标或下标是一个小于普通行格式的数字,图形,标志或者指示通常它的设置与行相比偏上或偏下.下标通常显示于或者低于基准线,而上标则高于.上标和下标通常被用于表达公式 ...

  4. C# 中使用Word文档对图像进行操作

    C# 中使用Word文档对图像进行操作 Download Files: ImageOperationsInWord.zip 简介 在这篇文章中我们可以学到在C#程序中使用一个Word文档对图像的各种操 ...

  5. C#中操作Word(1)—— word对象模型介绍

    一.开发环境布置 C#中添加对Word的支持,只需添加对Microsoft.Office.Interop.Word的命名空间,如下图所示,右键点击“引用”,在弹出的“添加引用”对话框中选中COM标签页 ...

  6. java操作office和pdf文件java读取word,excel和pdf文档内容

    在平常应用程序中,对office和pdf文档进行读取数据是比较常见的功能,尤其在很多web应用程序中.所以今天我们就简单来看一下Java对word.excel.pdf文件的读取.本篇博客只是讲解简单应 ...

  7. 网页中动态嵌入PDF文件/在线预览PDF内容https://www.cnblogs.com/xgyy/p/6119459.html

    #网页中动态嵌入PDF文件/在线预览PDF内容# 摘要:在web开发时我们有时会需要在线预览PDF内容,在线嵌入pdf文件: 问题1:如何网页中嵌入PDF: 在网页中: 常用的几种PDF预览代码片段如 ...

  8. thinkphp中的Ueditor的使用, 以及如何传递编辑器内容到后台?

    在线编辑器有很多很多, 而且大多是开源的. uediotr基于mit协议, 开源, 可以用于商业和非商业的 任意使用和修改都可以 如果两个相连接的 相邻的 元素之间 因为边框重叠 而显得中间的边框线很 ...

  9. 在C#中实现Word页眉页脚的全部功能

    页眉页脚经常使用于文章排版,在Word工具栏里.我们能够加入页眉,页脚,页码,日期和时间.图片等信息和内容.页眉/页脚有两个额外选项:首页不同,奇偶页不同.有时在不同的节(section)里插入不同的 ...

随机推荐

  1. 一些需要注意的C知识点

    1.数组在作为参数传递到函数时,会退化为一个指针.也就是说,一旦进入函数内部,数组已经变为了一个指针.其实是在参数传递的时候进行了浅拷贝,编译器会声明一个指针指向该数组,在函数内部所有的操作都是对该临 ...

  2. 学习php前需要了解的知识

    1.静态网站与动态网站 A)静态网站: 不支持数据交互的网站(后缀:   .html  .htm) B)动态网站: 支持数据交互的网站,动态网站可以放静态网页的 i.实现动态网站的技术 1.Asp   ...

  3. 15、C#基础整理(递归)

    带输出参数的函数 输入参数相当于函数而言,相当于已经赋值了的变量,直接可用输出参数相当于定义一个没有值的变量,在函数中进行赋值,然后调用函数的时候将赋值带出函数 例: public void shuc ...

  4. https 三次握手

    1,客户端输入https网址,链接到server443端口: 2,服务器手中有一把钥匙和一个锁头,把锁头传递给客户端.数字证书既是公钥,又是锁头 3,客户端拿到锁头后,生成一个随机数,用锁头把随机数锁 ...

  5. 关于linux python vim的一些基础知识(很零散)

    清空文件夹filenmae下所有文件 rm filename/* vim复制大量代码段 num+yy 从光标起始处复制num个数行 然后 python: 设置中断 1.from IPython imp ...

  6. python内置的数据结构

    详解列表List 这里是列表对象方法的清单: list.append(x) 添加一个元素到列表的末尾.相当于a[len(a):] = [x]. list.extend(L) 将给定列表L中的所有元素附 ...

  7. java中byte数据转换为c#的byte数据

    最近在做下载方面的开发.有一个需求,就是读取要下载的文件中的一些数据,比如要读取这个文件包含的用户信息,但是怎么读都不对.后来搞了很久才发现,服务器上的文件里的用户信息,用C#写的存储方法来存储的,而 ...

  8. 蓝牙SIG

    蓝牙SIG 蓝牙SIG是一个国际性的非营利组织,它的目的是制定蓝牙的技术规范和推广蓝牙技术的应用.该组织由发起会员(Promoter).合作会员(Associate Member)和接受会员(Adop ...

  9. 230. Kth Smallest Element in a BST

    Given a binary search tree, write a function kthSmallest to find the kth smallest element in it. Not ...

  10. linux脚本编程技术---8

    一.什么是脚本 脚本是一个包含一系列命令序列的可执行(777)文本文件.当运行这个脚本文件时,文件中包含的命令序列将得到自动执行. 二.脚本编程 #!/bin/sh 首行固定格式 #!表明该脚本的的解 ...