使用CreateFile, ReadFile, WriteFile在Windows NT/2000/XP下读写绝对扇区的方法
来源:互联网 发布:origin由图导出数据 编辑:程序博客网 时间:2024/05/17 23:57
也就是在CreateFile的时候打开文件名指定: “\\.\Device”就可以了.
因为代码比较短, 所以我不做注释, 相信大家看代码就能明白意思了.
另外这里读写的都是软盘A盘第0扇区, 如果想读写其他的扇区, 那么可以使用API SetFilePointer.
读扇区的方法(下面的代码演示从A盘的第0扇区读出数据, 写入到文件BOOT.BIN中):
因为代码比较短, 所以我不做注释, 相信大家看代码就能明白意思了.
另外这里读写的都是软盘A盘第0扇区, 如果想读写其他的扇区, 那么可以使用API SetFilePointer.
读扇区的方法(下面的代码演示从A盘的第0扇区读出数据, 写入到文件BOOT.BIN中):
#include <windows.h> #include <assert.h> #include <stdio.h> void main() { HANDLE hFile; hFile = CreateFile("\\\\.\\A:", GENERIC_READ, FILE_SHARE_READ, NULL, OPEN_EXISTING, 0, NULL); assert(hFile && "CreateFile failed!"); PBYTE pBuffer = (PBYTE)malloc(512); assert(pBuffer && "Allocate memory failed!"); DWORD dwLen; ReadFile(hFile, pBuffer, 512, &dwLen, NULL); FILE * fp; fp = fopen("boot.bin", "wb"); assert(fp && "Open file failed!"); fwrite(pBuffer, 512, 1, fp); fclose(fp); CloseHandle(hFile); free(pBuffer); } 那么相应的, 写扇区的方法的就是这样的咯(以下代码演示从BOOT.BIN中读出数据写入到A盘第0扇区): #include <windows.h> #include <assert.h> #include <stdio.h> void main() { HANDLE hFile; hFile = CreateFile("\\\\.\\A:", GENERIC_WRITE, FILE_SHARE_WRITE, NULL, OPEN_EXISTING, 0, NULL); assert(hFile && "CreateFile failed!"); PBYTE pBuffer = (PBYTE)malloc(512); assert(pBuffer && "Allocate memory failed!"); FILE * fp; fp = fopen("boot.bin", "rb"); assert(fp && "Open file failed!"); fread(pBuffer, 512, 1, fp); fclose(fp); DWORD dwLen; WriteFile(hFile, pBuffer, 512, &dwLen, NULL); CloseHandle(hFile); free(pBuffer); }
0 0
- 使用CreateFile, ReadFile, WriteFile在Windows NT/2000/XP下读写绝对扇区的方法
- 使用CreateFile, ReadFile, WriteFile在Windows NT/2000/XP下读写绝对扇区的方法
- 使用CreateFile, ReadFile, WriteFile在Windows NT/2000/XP下读写绝对扇区的方法
- 使用CreateFile, ReadFile, WriteFile在Windows NT/2000/XP下读写绝对扇区的方法
- CreateFile,ReadFile,WriteFile使用记录
- CreateFile、ReadFile、WriteFile和fread、fwrite两种读写文件的方法
- CreateFile ReadFile WriteFile读写文件操作
- win32 CreateFile readFile writefile 文件读写
- Windows API应用:CreateFile,WriteFile,ReadFile
- CreateFile WriteFile ReadFile FlushFileBuffers的基本用法
- CreateFile ReadFile WriteFile 详解
- CreateFile ReadFile WriteFile 详解
- CreateFile、WriteFile、ReadFile
- 使用API进行文件读写——CreateFile,ReadFile,WriteFile等
- CreateFile,ReadFile,WriteFile,DeviceIoControl,CloseHandle
- CreateFile,ReadFile,WriteFile,DeviceIoControl,CloseHandle .
- [Win32]ReadFile/WriteFile 的文件同步读写
- <Win32 API> 文件操作CreateFile/ReadFile/WriteFile
- 派密谋二次占中 激进团体不惜代价阻政改
- Java Socket实战之一:单线程通信
- 一张图读懂IO流 (java)不要错过!
- 学习Java的6个建议
- Laravel blade 模板积累
- 使用CreateFile, ReadFile, WriteFile在Windows NT/2000/XP下读写绝对扇区的方法
- 2015多益网络实习生招聘一题解析2
- JDK6和JDK7中的substring()方法
- vs2010未能正确加载XX包的解决方法
- WebLogic下部署war包
- 国家庭跨国收养首选中国 多数孩子需特殊照顾
- 指针与二维数组
- Day3对继承和对象的一点理解
- mysql 密码忘掉怎么办