hongpengtao
驱动小牛
驱动小牛
  • 注册日期2006-03-16
  • 最后登录2015-06-03
  • 粉丝0
  • 关注0
  • 积分14分
  • 威望190点
  • 贡献值0点
  • 好评度104点
  • 原创分0分
  • 专家分0分
阅读:1468回复:2

关于IoCreateFileSpecifyDeviceObjectHint的使用高手指点

楼主#
更多 发布于:2007-01-16 15:50
  小弟用下面代码打开文件但总是打开失败
问问有哪位高手可以给点提示

sfReadFile(IN PCWSTR FileName,IN PVOID XDeviceObject)
{
    HANDLE FileHandle = NULL;
    OBJECT_ATTRIBUTES ObjectAttributes;
    UNICODE_STRING ObjectName;
    IO_STATUS_BLOCK IoStatus;
    NTSTATUS Status;

    RtlInitUnicodeString(&ObjectName, FileName);

    InitializeObjectAttributes(
        &ObjectAttributes,
        &ObjectName,
        OBJ_KERNEL_HANDLE,
        NULL,
        NULL
        );
    Status = IoCreateFileSpecifyDeviceObjectHint(&FileHandle,
            FILE_READ_DATA,
            &ObjectAttributes,
            &IoStatus,
            NULL,
            FILE_ATTRIBUTE_NORMAL,
            0,
            FILE_OPEN,
            FILE_DIRECTORY_FILE ,
            NULL,
            0,
            CreateFileTypeNone,
            NULL,
            IO_IGNORE_SHARE_ACCESS_CHECK,
            XDeviceObject
            );




    if (NT_SUCCESS(Status))
    {
        KdPrint(("sfReadFile open '%s' is NT_SUCCESS %ws \n",FileName));
        ZwClose(FileHandle);
    }
}
sc_wolf
驱动小牛
驱动小牛
  • 注册日期2006-09-03
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分35分
  • 威望278点
  • 贡献值1点
  • 好评度150点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2007-01-23 10:08
dddddddd
那位老大帮助解决一下,小弟我出遇上这个问题了.谢谢
xiabl
驱动牛犊
驱动牛犊
  • 注册日期2005-10-24
  • 最后登录2010-05-20
  • 粉丝0
  • 关注0
  • 积分221分
  • 威望77点
  • 贡献值0点
  • 好评度71点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2007-01-23 16:14
PAGED_CODE();

     if(KeGetCurrentIrql()>PASSIVE_LEVEL)
    {    
        return 0;
    }
呵呵也不知道对不对,没试过
小桥流水人家
游客

返回顶部