qthirdsun
驱动牛犊
驱动牛犊
  • 注册日期2003-07-25
  • 最后登录2006-08-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
阅读:1520回复:4

ZwCreateFile和ZwOpenFile使用

楼主#
更多 发布于:2004-09-14 23:43
那位大侠,给举例说明在驱动中ZwCreateFile和ZwOpenFile使用的使用,(我想打开一个文件并读出文件中的数据到一个非分页缓冲区)
snowStart
驱动老牛
驱动老牛
  • 注册日期2004-04-06
  • 最后登录2011-06-02
  • 粉丝0
  • 关注0
  • 积分95分
  • 威望19点
  • 贡献值177点
  • 好评度1点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2004-09-15 08:51
    IO_STATUS_BLOCK  IoStatus;
    OBJECT_ATTRIBUTES objectAttributes;
    NTSTATUS status;
    HANDLE FileHandle;
    UNICODE_STRING fileName;

    fileName.Length = 0;
    fileName.MaximumLength = sizeof(DEFAULT_LOG_FILE_NAME) + sizeof(UNICODE_NULL);
    fileName.Buffer = ExAllocatePool(PagedPool,

    RtlZeroMemory(fileName.Buffer, fileName.MaximumLength);
    status = RtlAppendUnicodeToString(&fileName, (PWSTR)L"\\??\\C:\\data.log");


    InitializeObjectAttributes (&objectAttributes,
                                (PUNICODE_STRING)&fileName,
                                OBJ_CASE_INSENSITIVE,
                                NULL,
                                NULL );

    status = ZwCreateFile( &FileHandle,
                           FILE_APPEND_DATA,
                           &objectAttributes,
                           &IoStatus,
                           0,
                           FILE_ATTRIBUTE_NORMAL,
                           FILE_SHARE_WRITE,
                           FILE_OPEN_IF,
                           FILE_SYNCHRONOUS_IO_NONALERT,
                           NULL,    
                           0 );

[编辑 -  9/15/04 by  snowStart]
学习,关注,交流中... [email=fengyu@163.com]Email:snowstarth@163.com[/email] [url]http://bbs.zndev.com/?a=snowStart[/url]
snowStart
驱动老牛
驱动老牛
  • 注册日期2004-04-06
  • 最后登录2011-06-02
  • 粉丝0
  • 关注0
  • 积分95分
  • 威望19点
  • 贡献值177点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-09-15 08:54
斜杠怎么总不对呢,这次呢

status = RtlAppendUnicodeToString(&fileName, (PWSTR)L"\\\\??\\\\C:\\\\data.log");
学习,关注,交流中... [email=fengyu@163.com]Email:snowstarth@163.com[/email] [url]http://bbs.zndev.com/?a=snowStart[/url]
qthirdsun
驱动牛犊
驱动牛犊
  • 注册日期2003-07-25
  • 最后登录2006-08-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地板#
发布于:2004-09-15 11:14
我原来以为可以随便给分,现在才发现只能给20分,不好意思,我想其他办法把分给你发过去,谢谢!
qthirdsun
驱动牛犊
驱动牛犊
  • 注册日期2003-07-25
  • 最后登录2006-08-31
  • 粉丝0
  • 关注0
  • 积分10分
  • 威望1点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2004-09-16 09:27
为什么文件路径的最前面要加\\??\\呢?!
游客

返回顶部