linpin
驱动牛犊
驱动牛犊
  • 注册日期2001-08-11
  • 最后登录2003-06-09
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:1093回复:1

为什么读不出来数据??????????????

楼主#
更多 发布于:2002-10-23 10:29
代码如下:

RtlInitUnicodeString( &namestring, L\"\\\\DosDevices\\\\\");
RtlAppendUnicodeStringToString(&fullName,&namestring);
RtlAppendUnicodeStringToString(&fullName,&filename);  
 
InitializeObjectAttributes(&objectattributes,
&fullName,
OBJ_KERNEL_HANDLE|OBJ_OPENIF|OBJ_CASE_INSENSITIVE,
NULL,
NULL);

status=ZwCreateFile( &filehandle,
SYNCHRONIZE|FILE_ANY_ACCESS,
        &objectattributes,
&iostatus1,
NULL,
FILE_ATTRIBUTE_NORMAL,
FILE_SHARE_READ|FILE_SHARE_WRITE|FILE_SHARE_DELETE,
        FILE_OPEN,
        FILE_SYNCHRONOUS_IO_NONALERT,
        NULL,
0 );
if(NT_SUCCESS(status))
{
status=ZwReadFile( &filehandle,
NULL,
   NULL,
   NULL,
            &iostatus2,
   databuffer,
            DATABUFFER_SIZE,
            NULL,
   NULL);

}
else
{
      ExFreePool(databuffer);///////////运行这里
       return status;
}
其中filename.buffer=\"d:\\111.txt\";也就是fullname.buffer=\"\\dosdevice\\d:\\111.txt\"
softice跟踪,filehandle=0x8000012c,databuffer里面有没有数据,
并且每次,程序都运行到else里面!!
不知道错在那里,大虾们帮帮忙吧!!!

最新喜欢:

cyliucyliu
bbear
驱动小牛
驱动小牛
  • 注册日期2002-08-20
  • 最后登录2009-04-16
  • 粉丝0
  • 关注0
  • 积分30分
  • 威望3点
  • 贡献值0点
  • 好评度3点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-10-23 12:42


// 先催帐 TEST.txt 存在--
// \"\\\\??\\\\C:\\\\test.txt\" , 另一
游客

返回顶部