首页
社区
课程
招聘
[原创][Windows核心编程]快速清空大文件内容并保持源文件的磁盘数据位置不变
2009-9-19 18:21 6655

[原创][Windows核心编程]快速清空大文件内容并保持源文件的磁盘数据位置不变

2009-9-19 18:21
6655
function fun_FastOpenFileClear(const str_param_FilePath:string;
                               const dword_param_Size:DWORD):Boolean ;
var
  handle_File, handle_MapFile : THandle ;

  file_Point : Pointer ;

begin
  Result := False ;

  handle_File := CreateFile(PChar(str_param_FilePath),
                            GENERIC_WRITE or GENERIC_READ,
                            FILE_SHARE_READ,
                            nil,
                            OPEN_EXISTING,
                            FILE_ATTRIBUTE_NORMAL,
                            0) ;
  if handle_File = INVALID_HANDLE_VALUE then
  begin
    Exit ;
  end;

  handle_MapFile := CreateFileMapping(handle_File,
                                     nil,
                                     PAGE_READWRITE,
                                     0,
                                     dword_param_Size,
                                     nil) ;
  if handle_MapFile = 0 then
  begin
    CloseHandle(handle_File) ;
    Exit ;
  end;

  // 映射并清0
  file_Point := MapViewOfFile(handle_MapFile,
                              FILE_MAP_READ or FILE_MAP_WRITE,
                              0,
                              0,
                              0) ;
  ZeroMemory(file_Point, dword_param_Size) ;

  // 释放资源
  UnmapViewOfFile(file_Point) ;
  CloseHandle(handle_MapFile) ;
  CloseHandle(handle_File)    ;

  Result := True ;

end;// End fun_FastOpenFileClear()

[CTF入门培训]顶尖高校博士及硕士团队亲授《30小时教你玩转CTF》,视频+靶场+题目!助力进入CTF世界

收藏
点赞0
打赏
分享
最新回复 (14)
雪    币: 331
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
甲甲虫 2009-9-19 18:58
2
0
这么好的帖子怎么没人顶啊,我来坐沙发?
雪    币: 522
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
xacker 1 2009-9-19 20:02
3
0
智商有限  看不懂
雪    币: 450
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wonderu 2009-9-19 21:25
4
0
也许你还没这资格~
如果想出名不该来这地方显...
雪    币: 445
活跃值: (25)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
fenchang 2 2009-9-19 21:46
5
0
楼主太强大,不能学习只能膜拜
雪    币: 295
活跃值: (89)
能力值: ( LV15,RANK:340 )
在线值:
发帖
回帖
粉丝
木桩 8 2009-9-19 23:02
6
0
ZeroMemory
不评价这个代码了,看热闹的继续...
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
wasking 2009-9-20 00:08
7
0
其实,老实,诚实的我。
我说,我是来看神仙的,三哥,我要膜拜你。
雪    币: 150
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
ohlucifer 2009-9-20 00:10
8
0
我是来学习的~
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
多多longing 2009-9-20 00:29
9
0
老大,定上去,不敢沉了
雪    币: 115
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
hust白客 2009-9-20 00:37
10
0
外行看热闹,内行看门道

你内行!!!
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
qihoocom 9 2009-9-20 00:57
11
0
猪头三又来娱乐了,再娱乐找你们老大治你 哈哈
雪    币: 8188
活跃值: (4216)
能力值: ( LV15,RANK:2459 )
在线值:
发帖
回帖
粉丝
ccfer 16 2009-9-20 01:14
12
0
建议论坛可以为发帖人增加个IQ点数选项,低于设定值的人就看不到内容,因为看了也白看
雪    币: 158
活跃值: (193)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
猪头三 3 2009-9-20 01:40
13
0
说曹操到,就到了。 不行也得行呀。 ^_^ 真实太行了
PS:我一直认为你是老大哦。 绝对老大。中国所有人都让位。呵呵
雪    币: 635
活跃值: (101)
能力值: ( LV12,RANK:420 )
在线值:
发帖
回帖
粉丝
qihoocom 9 2009-9-20 01:52
14
0
如果是楼主这样的IQ值明显低于论坛常规IQ而导致大家看不懂的呢
雪    币: 158
活跃值: (193)
能力值: ( LV10,RANK:170 )
在线值:
发帖
回帖
粉丝
猪头三 3 2009-9-20 01:56
15
0
可是偏偏有类似 好像叫什么M什么的,人来看。 你说 这种人IQ 不是更低吗?
好像最近又改名了,叫什么q什么的。

算了,就此结贴。 周末大家放松一下。不用在意。^_^
游客
登录 | 注册 方可回帖
返回