IOCTL_CDROM_GET_PERFORMANCE IOCTL (ntddcdrm.h)
Recupera as velocidades com suporte do dispositivo. O IOCTL_CDROM_GET_PERFORMANCE solicitação de controle de E/S é um wrapper sobre o comando do MMC, GET PERFORMANCE.
Para executar essa operação, chame a função DeviceIoControl com IOCTL_CDROM_GET_PERFORMANCE como o parâmetro dwIoControlCode .
Código principal
Buffer de entrada
CDROM_PERFORMANCE_REQUEST solicita dados de desempenho. CDROM_WRITE_SPEED_REQUEST solicita o descritor de velocidade de gravação.
Comprimento do buffer de entrada
Comprimento de um CDROM_PERFORMANCE_REQUEST.
Buffer de saída
Para o tipo de solicitação CdromWriteSpeedRequest, essa IOCTL retorna a estrutura CDROM_PERFORMANCE_HEADER seguida por vários descritores CDROM_WRITE_SPEED_DESCRIPTOR.
Para o tipo de solicitação CdromPerformanceRequest, essa IOCTL retorna a estrutura CDROM_PERFORMANCE_HEADER seguida por um descritor opcional. O descritor que segue esse cabeçalho depende do valor no campo Except da estrutura CDROM_PERFORMANCE_HEADER . Se Except for false, CDROM_NOMINAL_PERFORMANCE_DESCRIPTOR será usado; caso contrário, CDROM_EXCEPTION_PERFORMANCE_DESCRIPTOR é usado.
Comprimento do buffer de saída
Comprimento de um CDROM_PERFORMANCE_HEADER.
Bloco de status
O campo Informações é definido como o número de bytes retornados.
Devido a status propagação de código de outras APIs, o campo Status pode ser definido como (mas não se limita a) o seguinte:
STATUS_BUFFER_TOO_SMALL
O comprimento do buffer de saída é menor do que o necessário.
STATUS_INFO_LENGTH_MISMATCH
O comprimento do buffer de entrada é menor do que o necessário.
STATUS_INVALID_DEVICE_REQUEST
O dispositivo não dá suporte a essa solicitação.
STATUS_INVALID_PARAMETER
O cabeçalho CDROM_PERFORMANCE_REQUEST não contém uma combinação válida de parâmetros especificados por enumerações.
STATUS_SUCCESS
A solicitação foi concluída com êxito.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ntddcdrm.h (inclua Winioctl.h) |