Недокументированные функции NTDLL

29 апреля 2007



NtRemoveIoCompletion (ZwRemoveIoCompletion)

NTSYSAPI 
NTSTATUS
NTAPI

NtRemoveIoCompletion(

IN HANDLE IoCompletionHandle, OUT PULONG CompletionKey, OUT PULONG CompletionValue, OUT PIO_STATUS_BLOCK IoStatusBlock, IN PLARGE_INTEGER Timeout OPTIONAL );




Функция NtRemoveIoCompletion эта функция ожидания. Она завершается в момент, когда по крайней мере одна запись завершения становится доступной в объекте завершения ввода-вывода. Записи добавляется тогда, когда завершена операция ввода-вывода, но предварительно файловый объект, должен быть ассоциирован с объектом завершения ввода-вывода.
Ассоциация между файлом и объектом завершения ввода-вывода делается вызовом NtSetInformationFile с классом информации FileCompletionInformation. Дополнительно каждый ассоциированный файл должен иметь определённый уникальный ключ. Эта функциональность позволяет использовать объект завершения ввода-вывода с разными файловыми объектами.
Каждый объект "Файл" может иметь только один объект завершения ввода-вывода, ассоциированный с ним.
Операции ввода-вывода не будут добавлены в объект завершения ввода-вывода до тех пор, пока файловая операция не будет вызвана с ненулевым значением в параметре ApcContext.


  • IoCompletionHandle
  •     HANDLE ранее созданного или открытого объекта завершения ввода-вывода.
  • CompletionKey
  •     Получает ключ, информирующий об объекте "файл", который завершает ввод-вывод.
  • CompletionValue
  •     Значение параметра файловой операции ApcContext. CompletionValue информирует о завершении операции.
  • IoStatusBlock
  •     Статус ввода-вывода завершённой операции.
  • Timeout
  •     Дополнительный указатель на переменную, которая содержит таймаут.


    Поддерживается в операционных системах:
    NT 4.0,Win 2000,Win XP/2003



    Документировал:
    Томаш Новак



    Зависимости:
    Библиотека: ntdll.lib


    См. также:
    FILE_COMPLETION_INFORMATION
    FILE_INFORMATION_CLASS
    NtCreateIoCompletion
    NtOpenIoCompletion
    NtReadFile
    NtSetInformationFile
    NtSetIoCompletion
    NtWriteFile