有关ZwRriteFile()在XP上正常 与2003下蓝屏的问题

   同样的程序,在XP下好好的,转到2003下就蓝屏了。

 

  一开始怀疑是编译器的问题,  在XP的 上2003----> x86 checked build environment 上编译,结果不行。

 

  又到2003下 x86 checked build environment 上编译,还是不行。

 

  逼得没办法了,只好在03下一句句注释掉试。  终于定位在zwwritefile(),不写文件就没事。

 

 

   问题就出在Zwritefile()上。   当我在XP上使用这个函数写一个已有文件(或创建)时没有问题,在2003上就蓝屏。    
    幸好以前在2003上用C#写网页也碰到过类似经历(web.config出错),所以怀疑是被写文件的操作权限问题。   所以给被写文件加上everyone用户,给预读写权限, 重启,OK!

 

 

   总结:XP的权限管理是无所谓的,  2003对文件的默认权限只有administrator、system和user三个用户有权操作。 所以必须给被修改的文件加everyone用户,并可写,你的程序才能够对这个文件写操作。

 

 PS:zwwritefile不是内核函数吗?为什么还会受用户限制????????

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值