NtQueryDirectoryFile 枚举部分文件并从上一个继续
因为我需要仅使用 Nt 级别的 api 创建一个应用程序,所以我想为 Ntquerydirectoryfile
的相同行为编写一个包装器,所以我收集了很多关于这个 api 的东西,但我无法理解其中的一些内容这个API。
NTSTATUS status = ZwQueryDirectoryFile(FileHandle,Event,ApcRoutine,ApcContext,IoStatusBlock,FileInformation,Length,FileInformationClass,ReturnSingleEntry,FileName,RestartScan);
这里IoStatusBlock(out)
包含了查询的目录或文件的信息和状态,status应该是这个api的返回类型,information应该是写入fileinformation
和的数据fileinformation
具有给定文件/目录的完整详细信息(任何 fileinformation
类结构),然后是长度 - 应填充多少数据..
o/p 参数是 IOstatusblock
和仅文件信息
在这里我看到了这个 api 的一个属性,它枚举一个具有一定分配长度的驱动器,它从中获取一些文件,然后返回有关长度的部分详细信息之后,Zwquerydirectory呼叫再次以相同的句柄但有其他长度,它从上次收到的上一个呼叫中获取数据..它只是我无法理解,因为 api 应该在哪里设置此信息来提醒位置开始准确的位置(偏移)...如果你知道它让我知道,真的很感激...
As i need to create an application using Nt level apis only , Here i want to write a wrapper for same behaviour of Ntquerydirectoryfile
,so i collect lot of things abt this api ,but i could not understand some in this api .
NTSTATUS status = ZwQueryDirectoryFile(FileHandle,Event,ApcRoutine,ApcContext,IoStatusBlock,FileInformation,Length,FileInformationClass,ReturnSingleEntry,FileName,RestartScan);
Here IoStatusBlock(out)
contains Information and status of queried dir or file ,status should be a return type of this api and information should be data written into fileinformation
and fileinformation
having full details(any fileinformation
class structure) of given file/dir then length - how much data should fill ..
o/p parameters are IOstatusblock
and fileinformation
only
here i saw an one property of this api which was enumerating a drive with some allocated length it fetches some files from it ,then return details partial regarding to length After that, Zwquerydirectory call comes again with same handle with some other length ,it fetches the data from last received one of previous call ..its only i could not understand ,because where should the api set this information to remind the position to start exact location(offset)...if u know abt it let me know ,it really appreciative...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论