Winhex数据恢复笔记(五)
一、上次介绍了Windows API函数,这次对Windows API函数的参数做个笔记
1、IpFileName: 文件名指针,也可指向 MS-Dos设备名,同时支持文件和设备名,函数分为两个版本ANSI和Unicode。ANSID版本的文件名长度不能超过max_path,而Unicode版本可扩展至32767个字符,
2、dwDesiredAccess 该参数指定文件或设备的访问方式,可以选择读方式或写方式,包含的选项参数0 描述既不读数据也不修改数据,不过还是可以访问一些属性信息。CENERIC_READ描述需要读取数据,CENERIC_WRITE描述需要写入数据。 ·
3、dwShareMode该参数指定设备的共享方式,读共享或者写共享、删除共享。选项参数0 描述要求独占设备的访问空间,FILE_SHARE_READ描述可以和其他进程共同访问文件或者设备,但是不能有任何写入行为,FILE_SHARE_WRITE描述其他进程能共同访问空间但是不能有任何读行为。FILE_SHARE_DELETE描述其他进程在访问时删除,移动文件或设备,没有关闭句柄调用时,文件或设备只被标记待删除,直到该文件所有打开的句柄都被关闭,它才被操作系统删除。
4、IpSecurityAttributes该参数,在需要访问文件或设备指定安全信息或是希望设备句柄能被继承时,才会调用。
5、dwCreationDisposition该参数指定访问方式的性质,选项参数CREATE_NEW描述建立一个新文件,CREATE_ALWAYS强制建立一个新文件,如果文件已经存在,会删掉旧文件保留新文件,OPEN_EXISTING描述打开一个文件,若文件本身不存在,将会得到一个新建的文件,TRUNCATE_EXISTING描述打开文件并将其大小截断为0.
6、dwFlagsAndAttributes该参数,指定访问行为的属性,一是发送一些算法微调信号以优化当前访问过程,二是创建新文件时设置文件的属性。其选项参数比较多略去。
二、winhex复制形式
1、正常复制:在编辑区之间复制采用这种复制方式,这里剪贴板算作内存提供。所以剪贴的时候不能超过存储空间。但是剪贴板的数据格式是Windows定义的。


Winhex数据恢复笔记(五)的更多相关文章
- WinHex数据恢复笔记(二)
续写上次笔记: 1.Winhex数据恢复软件的界面上的所有功能已经介绍了一遍,最主要的还是编程恢复的能力. 今天主要看看记事本的编辑恢复及其相关的一些问题,记事本的 编辑值是ASCII值,所以没有文件 ...
- WinHex数据恢复笔记(一)
WinHex数据恢复功能强大,可以从硬件簇上扇区进行数据扫描恢复.首先对winhex的各个功能介绍.之后对实例记录一个Word文档删除后进行恢复. 1.WinHex数据恢复软件的编辑区输入与其他普通文 ...
- Winhex数据恢复学习笔记(三)
上次对文件系统进行简单的分析,这次就文件的镜像功能做一介绍 1.首先镜像的概念:镜像就是数据的副本,是原来数据在相同位置上以相同的排列模式生成的拷贝,所以镜像可以用来还原原始数据,代替原始数据工作,镜 ...
- C#可扩展编程之MEF学习笔记(五):MEF高级进阶
好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用 ...
- 《MFC游戏开发》笔记五 定时器和简单动画
本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9332377 作者:七十一雾央 新浪微博:http:// ...
- (转)Qt Model/View 学习笔记 (五)——View 类
Qt Model/View 学习笔记 (五) View 类 概念 在model/view架构中,view从model中获得数据项然后显示给用户.数据显示的方式不必与model提供的表示方式相同,可以与 ...
- java之jvm学习笔记五(实践写自己的类装载器)
java之jvm学习笔记五(实践写自己的类装载器) 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类 ...
- Crazyflie笔记五: CRTP 实时通信协议(一)(转)
源:Crazyflie笔记五: CRTP 实时通信协议(一) 这里详细介绍了 Crazyflie 的 CRTP实时通信协议的相关内容,由于内容很长,分几篇博文来讲述.这里是第一节内容.欢迎交流:301 ...
- Learning ROS for Robotics Programming Second Edition学习笔记(五) indigo computer vision
中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...
随机推荐
- git修改文件夹名字
git mv -f oldfolder newfolder git add -u newfolder (-u选项会更新已经追踪的文件和文件夹) git commit -m "changed ...
- 使用C++ stringstream来进行数据类型转换
参考链接: http://blog.csdn.net/tao_627/article/details/39000779
- zabbix系列 ~ 如何更好的利用mysql监控
一 简介:今天来聊聊一些关于mysql 监控需要关注的问题二 实现的原理 1 global status 2 variables 三 我们需要关注的zabbix性能图 1 事务类型 ...
- 核心编程9 文件和文件的输入输出 (os模块)
1 python内建函数open和file 文件打开方便读取:f = open('文件名','模式','缓冲模式') #'r'读取,'w'写入(先清空后创建).'a'追加 详情文件模 ...
- Vue对变量的监控
Vue对变量的监控 watch: { a(val, oldVal) {//普通的watch监听 if (val == "1") { $('#myModal').modal(); } ...
- python print输出带颜色 总结
书写格式: 开头部分:\033[显示方式;前景色;背景色m + 结尾部分:\033[0m 注意:开头部分的三个参数:显示方式,前景色,背景色是可选参数,可以只写其中的某一个:另外由 ...
- nginx的linux服务器内核参数调整【转】
概述 由于默认的linux内核参数考虑的是最通用场景,这明显不符合用于支持高并发访问的Web服务器的定义,所以需要修改Linux内核参数,让Nginx可以拥有更高的性能: 在优化内核时,可以做的事情很 ...
- ES6学习笔记四(类和对象)
{ // 构造函数和实例 class Parent{ constructor(name='mukewan'){ this.name=name; } } let v_parent=new Parent( ...
- 《超越C++标准库:Boost库导引》:序
序(Foreword) C++社区正在发生着一些美妙的事情.尽管C++仍然是世界上使用最广泛的编程语言,它依旧在变得更加强大而且易用.不信么?容我慢慢道来. 当前版本的标准C++是在1998年最终确定 ...
- CDHtmlDialog探索----WebBrowser扩展和网页Javascript错误处理
当WebBrowser控件(CDHtmlDialog自动创建了WebBrowser控件)加载的网页中含有错误Javascript代码时默认情况下控件会弹出错误信息提示对话框,相对于用户体验来说这样的提 ...