Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: WinAPI и системное программирование > Работа с NtQueryDirectoryFile


Автор: splash666 19.7.2007, 22:11
Всем доброго времени суток!

Помогите разобраться с функцией NtQueryDirectoryFile. Ну никак не получается с ней работать (( Если есть - направьте на пример!
зы: В гугле смотрел, там в основном перехват её, мне же нужно для более мирных целей, а конкретно, для получения списка файлов ...
 smile 

Автор: bartram 19.7.2007, 22:59
splash666, опиши что тебе конкретно нужно? Что ты не можешь сделать?

вот, если тебе поможет 
Код

Function ZwQueryDirectoryFile(FileHandle: dword;
                              Event: dword;
                              ApcRoutine: pointer;
                              ApcContext: pointer;
                              IoStatusBlock: pointer;
                              FileInformation: pointer;
                              FileInformationLength: dword;
                              FileInformationClass: dword;
                              ReturnSingleEntry: bool;
                              FileName: PUnicodeString;
                              RestartScan: bool): NTStatus;
                              stdcall; external 'ntdll.dll';


Добавлено через 7 минут и 56 секунд
Структура записи в FileInformation для FileDirectoryInformation: 
Код

type  
 FILE_DIRECTORY_INFORMATION = packed record 
  NextEntryOffset: ULONG;
  Unknown: ULONG; 
  CreationTime,
  LastAccessTime, 
  LastWriteTime, 
  ChangeTime, 
  EndOfFile, 
  AllocationSize: int64;  
  FileAttributes: ULONG; 
  FileNameLength: ULONG; 
  FileName: PWideChar;  
 end;


а вообще подробнее http://wasm.ru/article.php?article=apihook_1

Автор: splash666 20.7.2007, 05:32
bartram, спасибо! Там я в первую очередь был... Понимаю, что для того, чтобы разобраться с функцией, информации достаточно, но что то у меня не получается никак... ((( 

Автор: bartram 20.7.2007, 17:37
splash666, где ты эту функцию используешь? что тебе надо просто список файлов получить и почему именно через нее?

Автор: MetalFan 24.7.2007, 08:06
помнится, я тоже однажды пытался ее запользовать... но так и не разобрался, что ж за параметры туда нужно передать - появились другие задачки)
а вообще покажи код, что у тебя не работает.... может "покурим" все, разберемся)

Автор: bartram 24.7.2007, 09:27
Цитата(MetalFan @  24.7.2007,  10:06 Найти цитируемый пост)
помнится, я тоже однажды пытался ее запользовать... но так и не разобрался, что ж за параметры туда нужно передать - появились другие задачки)
а вообще покажи код, что у тебя не работает.... может "покурим" все, разберемся) 

Сегодня вечерком попробую разобратся. Помнится я тоже как то сидел и разбирался, но так и не разобрался, может сейчас смогу )) Надо литературу покурить smile


Автор: DIMONSOFT 25.7.2007, 10:15
http://forum.sources.ru/index.php?showtopic=92773
Krid привел неплохой пример

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)