首页
社区
课程
招聘
[求助]这段驱动的代码错在哪里?
发表于: 2007-1-14 17:08 3885

[求助]这段驱动的代码错在哪里?

2007-1-14 17:08
3885
我在按MSDN的说明,驱动里想访问磁盘文件 NTDLL。DLL,但是每次都会出错,在VC编译后却能正常运行。下面代码错在哪里?
LOCAL        OBJAttr:OBJECT_ATTRIBUTES
LOCAL         IOSB:IO_STATUS_BLOCK
LOCAL   hFile:DWORD,hSection:DWORD,Base:DWORD,hProcess:DWORD,dwImgSize
LOCAL          UniDllName:UNICODE_STRING
        invoke RtlInitUnicodeString,ADDR UniDllName,$CTW0("\\SystemRoot\\System32\\ntdll.dll")
        lea esi,OBJAttr
        assume esi:ptr OBJECT_ATTRIBUTES
        mov [esi]._Length,sizeof OBJECT_ATTRIBUTES
        mov [esi].RootDirectory,0
        lea eax,UniDllName
        mov [esi].ObjectName,eax
        mov [esi].Attributes,OBJ_CASE_INSENSITIVE
       
        invoke ZwOpenFile,Addr hFile,
                        FILE_EXECUTE or SYNCHRONIZE,
                        ADDR OBJAttr,
                        ADDR IOSB,
                        FILE_SHARE_READ,
                        FILE_SYNCHRONOUS_IO_NONALERT
          ZwOpenFile返回C0000058h

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (1)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
大家帮帮忙啊!
2007-1-15 01:48
0
游客
登录 | 注册 方可回帖
返回
//