Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
ChangerError executa o tratamento de erros específicos do dispositivo.
Sintaxe
VOID ChangerError(
PDEVICE_OBJECT DeviceObject,
PSCSI_REQUEST_BLOCK Srb,
NTSTATUS *Status,
BOOLEAN *Retry
);
Parâmetros
DeviceObject
Ponteiro para o objeto do dispositivo que representa o alterador.
Srb
Ponteiro para o bloco de solicitação SCSI para a operação que falhou.
Status
Especifica o endereço do STATUS_XXX código definido pelo sistema. O driver de miniclasse do alterador pode alterar o status ou deixá-lo como está.
Retry
Ponteiro para um sinalizador que indica se a solicitação deve ser repetida. O driver de miniclasse do alterador pode definir esse sinalizador ou deixá-lo como está.
Valor de retorno
Nenhum
Observações
Essa rotina é necessária.
Se um SRB falhar com um status SCSI de CHECK CONDITION, o driver de classe SCSI chamará a rotina changerClassError do driver de classe do alterador. ChangerClassError executa o tratamento de erros independente do dispositivo e chama a rotina de changerError do driver de miniclasse do alterador.
ChangerError verifica primeiro Srb –> SrbStatus com SRB_STATUS_AUTOSENSE_VALID para garantir que o buffer de dados de sentido seja válido. Em caso afirmativo, ele verifica os dados de sentido em Srb –> SenseInfoBuffer para determinar se deve atualizar *Status com um código STATUS_de XXX mais preciso e/ou definir o sinalizador de repetição de antes de retornar ao driver de classe do changer. A contagem de repetição do driver de classe do modificador determina se o SRB foi realmente repetido.
Requisitos
| Requisito | Valor |
|---|---|
| da Plataforma de Destino | Área de trabalho |
| cabeçalho | mcd.h (include Mcd.h, Ntddchgr.h) |
| IRQL | PASSIVE_LEVEL |