VB声明
Declare Function WriteFile Lib "kernel32" Alias "WriteFile" (ByVal hFile As Long, lpBuffer As Any, ByVal nNumberOfBytesToWrite As Long, lpNumberOfBytesWritten As Long, lpOverlapped As OVERLAPPED) As Long
说明
将数据写入一个文件。该函数比lwrite函数要灵活的多。也可将这个函数应用于对通信设备、管道、套接字以及邮槽的处理
返回值
Long,TRUE(非零)表示成功,否则返回零。会设置GetLastError
参数表
参数 类型及说明
hFile Long,一个文件的句柄
lpBuffer Any,要写入的一个数据缓冲区
nNumberOfBytesToWrite Long,要写入数据的字节数量。如写入零字节,表示什么都不写入,但会更新文件的“上一次修改时间”。针对位于远程系统的命名管道,限制在65535个字节以内
lpNumberOfBytesWritten Long,实际写入文件的字节数量
lpOverlapped OVERLAPPED,倘若在指定FILE_FLAG_OVERLAPPED的前提下打开文件,这个参数就必须引用一个特殊的结构。那个结构定义了一次异步写操作。否则,该参数应置为空(将声明变为ByVal As Long,并传递零值)
注解

并不是每种操作系统都支持在任何类型的设备上进行异步操作。windows 95不支持对磁盘文件的重叠读取操作

-_-!!!真的很简单!

补充一点:

OVERLAPPED结构

typedef   struct_OVERLAPPED  
  {  
        DWORD   Internal;  
        DWORD   InternalHigh;  
        DWORD   offset;  
        DWORD   offsetHigh;  
        HANDLE   hEvent;  
  }OVERLAPPED;  
  Internal   指定与系统相关的状态,为操作系统的使用而保留;  
  InternalHigh   指定传送数据的长度,为操作系统的使用而保留;  
  offset   指定文件的位置,从该位置传送数据,文件位置是相对文件开始处的字节偏移量。调用ReadFile或WriteFile函数之前调用进程设置这个成员,读写命名管道及通信设备时调用进程忽略这个成员;  
  offsetHigh   指定开始传送数据的字节偏移量的高位字,读写命名管道及通信设备时调用进程忽略这个成员;  
  hEvent   标识事件,数据传送完成时把它设为信号状态,调用ReadFile   WriteFile   ConnectNamedPipe   TransactNamedPipe函数前,调用进程设置这个成员.  
  相关函数   CreateEvent     ResetEvent   GetOverlappedResult   WaitForSingleObject   CWinThread   GetLastErro

转载于:https://www.cnblogs.com/yimins/articles/1724865.html

WriteFile API简介相关推荐

  1. 线程编程常见API简介(中)

    2019独角兽企业重金招聘Python工程师标准>>> 一.概述 在<线程编程常见API简介(上) >中讲述了有关线程创建过程中常用的 API 的使用方法,本节继续讲述有 ...

  2. WebSocket API简介

    WebSocket是html5新增加的一种通信协议,目前流行的浏览器都支持这个协议,例如Chrome,Safari,Firefox,Opera,IE等等,对该协议支持最早的应该是chrome,从chr ...

  3. web API简介(二):客户端储存之document.cookie API

    概述 前篇:web API简介(一):API,Ajax和Fetch 客户端储存从某一方面来说和动态网站差不多.动态网站是用服务端来储存数据,而客户端储存是用客户端来储存数据.document.cook ...

  4. 【Netty】NIO 网络通信 SelectionKey 常用 API 简介

    文章目录 I . SelectionKey 简介 II . SelectionKey 事件简介 III . SelectionKey 常用 API 简介 I . SelectionKey 简介 1 . ...

  5. 【Java 网络编程】TCP API 简介 ( Socket | ServerSocket )

    文章目录 I Socket API 简介 II ServerSocket API 简介 III Socket 数据交互 IV Socket 客户端操作流程 V Socket 服务器端操作流程 VI S ...

  6. java编译器使用教程_Java编译器API简介

    今天给大家分享的是Java编译器API简介,文章部分内容摘自[优锐课]学习笔记. Java编译器API Java编译器API是Java模块(称为java.compiler)的一部分.该模块包括语言模型 ...

  7. 通过调试对WriteFile()API的钩取

    通过调试对WriteFile()API的钩取 0x00 目标与思路 目标:钩取指定的notepad.exe进程writeFile()API函数,对notepad.exe进程的写入的字符保存时保存为大写 ...

  8. html5画电池状态,HTML5的一个显示电池状态的API简介

    这篇文章主要介绍了HTML5的一个显示电池状态的API简介,由Mozilla设计,具体的设备和浏览器支持情况还要通过检测才能确定,需要的朋友可以参考下 移动设备的份额在网络流量中在大量增长,其所贡献的 ...

  9. ZABBIX API简介及使用

    API简介 Zabbix API开始扮演着越来越重要的角色,尤其是在集成第三方软件和自动化日常任务时.很难想象管理数千台服务器而没有自动化是多么的困难.Zabbix API为批量操作.第三方软件集成以 ...

最新文章

  1. JS 验证表单不能为空
  2. 订单×××的算法研究与实现
  3. wedo巡线机器人编程教程_这是一个机器人和编程的时代
  4. sdut 3346 sdut 3344 Runtime Error Runtime Error?
  5. Leetcode1710. 卡车上的最大单元数[C++题解]:贪心
  6. dispatcherservlet发送2次请求_[Java] SpringMVC工作原理之一:DispatcherServlet
  7. Visual Studio 2010 Ultimate敏捷测试驱动开发
  8. 幻世机器人_2014年科幻动作《幻世追踪/启动机械码》BD中英双字幕
  9. python闭环最短路径_最短路径算法的实现(dijskstra):Python
  10. python-朴素贝叶斯分类器
  11. Python对象引用和del删除引用
  12. ftp ---- vsftpd安装卸载
  13. nodejs进程异常退出处理方法
  14. 数据库——MySQL
  15. golang tailf日志组件的基本使用
  16. 想知道PDF转Word软件免费有哪些吗?试试这3款工具
  17. 微信小程序链接快速生成方法
  18. java ruby 比较_java和ruby的一些比较
  19. 网络基础知识之IP与子网掩码和网络地址
  20. 使用jol如何判断一个对象当前处于哪种锁

热门文章

  1. 决策树缺失值python_【机器学习笔记之二】决策树的python实现
  2. php mysql 编码转换_PHP编码转换函数应用
  3. python的socket编程接收浏览器上传的文件_使用python套接字编程将文件发送到浏览器...
  4. C标签加EL表达式在jsp页面实现遍历后台内容
  5. mysql 存储过程简单使用_mysql存储过程的简单使用教程
  6. mysql 无符号 负数_mysql下有符号数和无符号数的相关问题
  7. 载波聚合或双连接的方式进行_首发天玑1000+!iQOO Z1来了:5G+5G双卡双待、双WiFi 6...
  8. linux mac docky,Ubuntu 7.10中安装酷酷的MAC风格 dock(图)
  9. Java继承_深入理解Java继承、封装、多态的实现原理
  10. c开头英文语言,C开头的考研英语词汇