一、上次介绍了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数据恢复笔记(五)的更多相关文章

  1. WinHex数据恢复笔记(二)

    续写上次笔记: 1.Winhex数据恢复软件的界面上的所有功能已经介绍了一遍,最主要的还是编程恢复的能力. 今天主要看看记事本的编辑恢复及其相关的一些问题,记事本的 编辑值是ASCII值,所以没有文件 ...

  2. WinHex数据恢复笔记(一)

    WinHex数据恢复功能强大,可以从硬件簇上扇区进行数据扫描恢复.首先对winhex的各个功能介绍.之后对实例记录一个Word文档删除后进行恢复. 1.WinHex数据恢复软件的编辑区输入与其他普通文 ...

  3. Winhex数据恢复学习笔记(三)

    上次对文件系统进行简单的分析,这次就文件的镜像功能做一介绍 1.首先镜像的概念:镜像就是数据的副本,是原来数据在相同位置上以相同的排列模式生成的拷贝,所以镜像可以用来还原原始数据,代替原始数据工作,镜 ...

  4. C#可扩展编程之MEF学习笔记(五):MEF高级进阶

    好久没有写博客了,今天抽空继续写MEF系列的文章.有园友提出这种系列的文章要做个目录,看起来方便,所以就抽空做了一个,放到每篇文章的最后. 前面四篇讲了MEF的基础知识,学完了前四篇,MEF中比较常用 ...

  5. 《MFC游戏开发》笔记五 定时器和简单动画

    本系列文章由七十一雾央编写,转载请注明出处. http://blog.csdn.net/u011371356/article/details/9332377 作者:七十一雾央 新浪微博:http:// ...

  6. (转)Qt Model/View 学习笔记 (五)——View 类

    Qt Model/View 学习笔记 (五) View 类 概念 在model/view架构中,view从model中获得数据项然后显示给用户.数据显示的方式不必与model提供的表示方式相同,可以与 ...

  7. java之jvm学习笔记五(实践写自己的类装载器)

    java之jvm学习笔记五(实践写自己的类装载器) 课程源码:http://download.csdn.net/detail/yfqnihao/4866501 前面第三和第四节我们一直在强调一句话,类 ...

  8. Crazyflie笔记五: CRTP 实时通信协议(一)(转)

    源:Crazyflie笔记五: CRTP 实时通信协议(一) 这里详细介绍了 Crazyflie 的 CRTP实时通信协议的相关内容,由于内容很长,分几篇博文来讲述.这里是第一节内容.欢迎交流:301 ...

  9. Learning ROS for Robotics Programming Second Edition学习笔记(五) indigo computer vision

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

随机推荐

  1. 嵌入式开发平台迅为iTOP-4412开发板-ssh常见问题以及解决方法

    一.基本网络,软件安装以及配置 ssh 软件无法登陆 Ubuntu,有可能是网络不通.SSH 软件未安装.环境变量没配置.防 火墙未关闭等. 1. 网络连接 使用 ssh 传输文件的前提是网络顺畅,即 ...

  2. Javascript - ExtJs - 整合百度文章编辑器

    ExtJs - 整合百度文章编辑器(ExtJs UEditor) 第一步:去官网下载最新版本的UEditor,UEditor下载. 第二步:在编辑器根目录创建一个Extjs-Editor.js,录入以 ...

  3. light oj 1011 - Marriage Ceremonies

    题目大意: 给出n*n的矩阵Map,Map[i][j]代表第i个男人和第j个女人之间的满意度,求男女一一配对后,最大的满意度之和. 题目思路:状态压缩 题目可看做每行取一点,所有点不同列的情况下,各个 ...

  4. 【Java编程思想笔记】-集合1

    1.为什么要用集合? 一般情况下,数组是保存一组对象(或基本数据类型)最有效的方式.但是数组有着固定的尺寸,而在更一般的情况下,我们在写程序时不知道将需要保存多少个对象,或者是否需要更复杂的存储结构来 ...

  5. oracle监听器初识-配置多SERVICE_NAMES

    现象: 为数据库设置多个服务名(通过SCOPE=both设置,同时修改参数文件) SQL> show parameter service_names; NAME TYPE VALUE ----- ...

  6. 20165325 2017-2018-2 《Java程序设计》 第八周学习总结

    一.教材学习笔记 ch12 1.程序是一段静态的代码,进程是程序的一次动态执行过程 2.线程比进程还小,一个进程的进行期间可以产生多个线程. 3.Java内置对多线程的支持.我们的计算机在任何给定说的 ...

  7. bootstrap模态框显示时被遮罩层遮住了

    <style>.modal-backdrop{z-index:0;}</style>

  8. Linux下的进程结构

    Linux系统是一个多进程的系统,它的进程之间具有并行性.互不干扰等特点.也就是说,每个进程都是一个独立的运行单位,拥有各自的权利和责任.其中,各个进程都运行在独立的虚拟地址空间.因此,即使一个进程发 ...

  9. QTableWidget

    1.QTableWidget继承自QTableView. QSqlTableModel能与QTableView绑定,但不能于QTableWidget绑定.​ QTableWidget是QTableVi ...

  10. Cassandra docker 使用记录

    环境介绍: docker 安装 cassandra 3.11.1 , 然后进入docker 的终端,输入 > cqlsh , 即可使用Cassandra了,详细介绍如下: 查看表空间descri ...