dionysus77
驱动小牛
驱动小牛
  • 注册日期2006-11-15
  • 最后登录2011-12-18
  • 粉丝0
  • 关注0
  • 积分27分
  • 威望392点
  • 贡献值0点
  • 好评度177点
  • 原创分0分
  • 专家分0分
阅读:1791回复:11

[请教大牛]写文件尾成功,但无数据写入,但文件长度增加???

楼主#
更多 发布于:2007-07-21 09:26
我在cleanup中(完成前),自己发送IRP(IoBuildsyn.............),设置标志为NOCACHE,写文件尾。返回Status和Information都为0,EndOfFile确实增加了写入长度,但文件尾数据全为空0。大牛们能帮小弟指点一下吗?
dionysus77
驱动小牛
驱动小牛
  • 注册日期2006-11-15
  • 最后登录2011-12-18
  • 粉丝0
  • 关注0
  • 积分27分
  • 威望392点
  • 贡献值0点
  • 好评度177点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-07-21 16:38
经过进一步调试发现:写的起始位置(ByteOffset.QuadPart)如果为512的整数倍,写操作就会成功,待大牛们进一步答疑
fazwh
驱动牛犊
驱动牛犊
  • 注册日期2005-09-11
  • 最后登录2020-11-18
  • 粉丝0
  • 关注0
  • 积分32分
  • 威望303点
  • 贡献值0点
  • 好评度48点
  • 原创分0分
  • 专家分0分
  • 社区居民
板凳#
发布于:2007-07-21 23:21
IRP_NOCACHE是512对齐。
txt在文件小于512之前好象没问题,可以写入。
我也不懂里面的原因,共同研究。
jl2004
驱动小牛
驱动小牛
  • 注册日期2007-04-10
  • 最后登录2011-02-22
  • 粉丝0
  • 关注0
  • 积分21分
  • 威望276点
  • 贡献值0点
  • 好评度129点
  • 原创分0分
  • 专家分0分
地板#
发布于:2007-07-23 09:06
ding
向前,向前,向前....
wengzuhong
驱动小牛
驱动小牛
  • 注册日期2004-07-16
  • 最后登录2014-10-22
  • 粉丝3
  • 关注1
  • 积分9分
  • 威望262点
  • 贡献值0点
  • 好评度219点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2007-07-23 17:10
能看看你的getinfomation与setinfomation代码吗?
oyclkelly
驱动牛犊
驱动牛犊
  • 注册日期2006-06-07
  • 最后登录2009-07-27
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望29点
  • 贡献值0点
  • 好评度28点
  • 原创分0分
  • 专家分0分
5楼#
发布于:2007-07-27 17:26
512是最小单位写入长度,不足的按照512计算
linuxyf
驱动小牛
驱动小牛
  • 注册日期2007-04-03
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望162点
  • 贡献值0点
  • 好评度161点
  • 原创分1分
  • 专家分0分
6楼#
发布于:2007-07-27 18:33
磁盘簇的大小是512,非缓存写也是按这个大小写进去的。
在孤独和无助中缓慢前行...
dionysus77
驱动小牛
驱动小牛
  • 注册日期2006-11-15
  • 最后登录2011-12-18
  • 粉丝0
  • 关注0
  • 积分27分
  • 威望392点
  • 贡献值0点
  • 好评度177点
  • 原创分0分
  • 专家分0分
7楼#
发布于:2007-07-27 18:40
多谢各位大侠,还有点不明白,比如本来文件长度只有15,现在我要给它加一个长度512的文件尾,应该从什么位置开始写入?512?那512-15的空位置怎么处理呢?
linuxyf
驱动小牛
驱动小牛
  • 注册日期2007-04-03
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望162点
  • 贡献值0点
  • 好评度161点
  • 原创分1分
  • 专家分0分
8楼#
发布于:2007-07-27 18:49
我想写入的时候是这样的,对于文件内容不足512的,比如本来文件长度只有15,那你应该把文件尾的前497附上,凑足512写入,然后把剩下的15文件尾写入。
在孤独和无助中缓慢前行...
dionysus77
驱动小牛
驱动小牛
  • 注册日期2006-11-15
  • 最后登录2011-12-18
  • 粉丝0
  • 关注0
  • 积分27分
  • 威望392点
  • 贡献值0点
  • 好评度177点
  • 原创分0分
  • 专家分0分
9楼#
发布于:2007-07-27 20:00
哦,原来如此,谢啦,试试看:)
linuxyf
驱动小牛
驱动小牛
  • 注册日期2007-04-03
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分1000分
  • 威望162点
  • 贡献值0点
  • 好评度161点
  • 原创分1分
  • 专家分0分
10楼#
发布于:2007-07-30 08:31
楼主试的如何,可以吗?
在孤独和无助中缓慢前行...
hyjtlyra2009
驱动牛犊
驱动牛犊
  • 注册日期2008-09-10
  • 最后登录2010-07-22
  • 粉丝6
  • 关注0
  • 积分2分
  • 威望323点
  • 贡献值2点
  • 好评度0点
  • 原创分0分
  • 专家分10分
11楼#
发布于:2008-11-18 13:06
楼主怎么没结贴?
洗鉴宏宇 兼济豢龙
游客

返回顶部