/p>
Местоположение буферов данных в пакете IRP будет рассмотрено в следующем разделе («Получение буфера»).
4. Поле Access указывает тип доступа, который должен был быть запрошен (и предоставлен) при открытии объекта-файла, для которого передается данный код Управления вводом/выводом. Возможные значения для этого параметра следующие:
- FILE_ANY_ACCESS. Это значение указывает, что при вызове CreateFile() мог быть запрошен любой доступ.
- FILE_READ_ACCESS. Это значение указывает, что должен был быть запрошен доступ для чтения.
- FILE_WRITE_ACCESS. Это значение указывает, что должен был быть запрошен доступ для записи.
Заметим, что file_read_access и file_write_access могут быть указаны одновременно, чтобы указать, что при открытии устройства должен быть предоставлен и доступ на чтение, и доступ на запись.
Параметр Access требуется потому, что операции управления ввода/вывода, по своей сути не есть операция чтения или записи. Прежде, чем будет разрешена запрашиваемая операция ввода/вывода, Диспетчер Ввода/вывода должен знать, какой режим доступа нужно проверить в таблице описателей.