ВУЗ:
Составители:
105
DeviceObject – указатель на объект представляемого устройства
Irp – указатель на запрос ввода-вывода для этого вызова
Возвращаемое значение:
STATUS_INVALID_PARAMETER если параметры заданы неверно,
иначе STATUS_SUCCESS.
{
Irp->IoStatus.Status = STATUS_SUCCESS;
Irp->IoStatus.Information = 0;
IoCompleteRequest( Irp, IO_NO_INCREMENT );
return STATUS_SUCCESS;
}
NTSTATUS
RamDiskDeviceControl(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp
)
Функция реализует ioctl функции
Аргументы:
DeviceObject – указатель на объект устройства
Irp – указатель на запрос ввода-вывода
Возвращаемое значение:
STATUS_SUCCESS если поддерживаемый запрос, иначе
STATUS_INVALID_DEVICE_REQUEST.
{
PRAMDISK_EXTENSION diskExtension;
PIO_STACK_LOCATION irpSp;
NTSTATUS ntStatus;
… Инициализация
По умолчанию – неверный запрос
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
Определяет, какая функция требуется
switch ( irpSp->Parameters.DeviceIoControl.IoControlCode )
{
case IOCTL_DISK_GET_MEDIA_TYPES:
case IOCTL_DISK_GET_DRIVE_GEOMETRY:
… Возвращает параметры диска, так называемую геометрию
DeviceObject – указатель на объект представляемого устройства
Irp – указатель на запрос ввода-вывода для этого вызова
Возвращаемое значение:
STATUS_INVALID_PARAMETER если параметры заданы неверно,
иначе STATUS_SUCCESS.
{
Irp->IoStatus.Status = STATUS_SUCCESS;
Irp->IoStatus.Information = 0;
IoCompleteRequest( Irp, IO_NO_INCREMENT );
return STATUS_SUCCESS;
}
NTSTATUS
RamDiskDeviceControl(
IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp
)
Функция реализует ioctl функции
Аргументы:
DeviceObject – указатель на объект устройства
Irp – указатель на запрос ввода-вывода
Возвращаемое значение:
STATUS_SUCCESS если поддерживаемый запрос, иначе
STATUS_INVALID_DEVICE_REQUEST.
{
PRAMDISK_EXTENSION diskExtension;
PIO_STACK_LOCATION irpSp;
NTSTATUS ntStatus;
… Инициализация
По умолчанию – неверный запрос
Irp->IoStatus.Status = STATUS_INVALID_DEVICE_REQUEST;
Определяет, какая функция требуется
switch ( irpSp->Parameters.DeviceIoControl.IoControlCode )
{
case IOCTL_DISK_GET_MEDIA_TYPES:
case IOCTL_DISK_GET_DRIVE_GEOMETRY:
… Возвращает параметры диска, так называемую геометрию
105
Страницы
- « первая
- ‹ предыдущая
- …
- 103
- 104
- 105
- 106
- 107
- …
- следующая ›
- последняя »
