ZwQueryDirectoryFile Behavior - PullRequest
       1

ZwQueryDirectoryFile Behavior

1 голос
/ 21 мая 2011

Я узнаю из документации MSDN об использовании ZWQueryDirectoryFile API. Я озадачен одной конкретной функциональностью.

Случай: мое приложение использует только API уровня NT. Я должен получить файлы и каталоги в указанном родительском каталоге с ZwQueryDirectoryFile. Я должен выделить буфер с длиной, которая неизвестна. Поэтому я хотел бы сделать это, выделив 4096 и получить объекты, подходящие по размеру, и я должен распределить их дальше, чтобы получить оставшиеся до ERROR_NO_MORE_FILES. FindNextFile использует ту же концепцию, вызывая фазу ZWQueryDirectoryFIle фазой с длиной буфера 4096. Таким образом, я предположил, что требование определенно выполнимо через API querydirectoryfile. Моя проблема заключается в том, что когда я вызываю файл каталога запросов во второй раз, я не знаю, как сообщить API ZwQueryDirectoryFile о выходе из предыдущего состояния выборки.

1 Ответ

1 голос
/ 21 мая 2011

Вам нужно передать FALSE в аргументе RestartScan. Из документации :

RestartScan [in]

Установите на TRUE, если сканирование должно начинаться с первой записи в каталог. Установите FALSE при возобновлении сканирование с предыдущего звонка.

...