Compartilhar via


Função VideoPortRegisterBugcheckCallback (video.h)

A função VideoPortRegisterBugcheckCallback permite que um driver de miniporto de vídeo se registre ou gancho para um retorno de chamada que é invocado quando ocorre um bug especificado marcar.

Sintaxe

VIDEOPORT_DEPRECATED VIDEOPORT_API VP_STATUS VideoPortRegisterBugcheckCallback(
  [in] IN PVOID                    HwDeviceExtension,
  [in] IN ULONG                    BugcheckCode,
  [in] IN PVIDEO_BUGCHECK_CALLBACK Callback,
  [in] IN ULONG                    BugcheckDataSize
);

Parâmetros

[in] HwDeviceExtension

Ponteiro para a extensão de dispositivo do driver de miniport.

[in] BugcheckCode

Indica o bug marcar código para o qual ser chamado novamente. Atualmente, o driver de miniporte só pode se registrar para 0xEA de código de marcar de bugs.

[in] Callback

Ponteiro para a função HwVidBugcheckCallback do driver de miniport. Essa função deve ser não paga e não deve referenciar código ou dados pagináveis. O driver de miniporte pode definir esse parâmetro como NULL para indicar que o bug marcar retorno de chamada deve ser desenhooked.

[in] BugcheckDataSize

Indica a soma de BUGCHECK_DATA_SIZE_RESERVED e o número de bytes de dados que o driver de miniporto fornecerá para inclusão no arquivo de despejo. O valor desse parâmetro deve ser menor ou igual a 4000. O driver de miniporte pode definir esse parâmetro como zero para indicar que o bug marcar retorno de chamada deve ser desenhooked.

Retornar valor

VideoPortRegisterBugcheckCallback retornará NO_ERROR se for bem-sucedido. Caso contrário, ele retornará um código status indicando a natureza da falha.

Comentários

Se você estiver desenvolvendo um driver de miniporto de vídeo destinado a ser executado no Windows XP ou em um sistema operacional base NT anterior, poderá usar a rotina de retorno de chamada VideoPortGetProcAddress para encontrar o endereço da função VideoPortRegisterBugcheckCallback . Para obter detalhes, confira Usando VideoPortGetProcAddress.

Um driver de miniporte pode se registrar para um retorno de chamada quando ocorre um tipo específico de bug marcar. Atualmente, somente marcar 0xEA de código de bug pode ser fisgado. Quando o bug marcar ocorre, a função de retorno de chamada fornecida pelo minidriver é chamada e o driver de miniport pode acrescentar dados ao arquivo de despejo. Isso é útil para coletar dados estatísticos quando a depuração direta não é possível.

O valor do parâmetro BugcheckDataSize deve ser BUGCHECK_DATA_SIZE_RESERVED bytes maiores do que os dados fornecidos pelo driver de miniport. Por exemplo, suponha que o driver de miniporto forneça DUMP_SIZE bytes de dados a serem gravados no arquivo de despejo. Em seguida, o valor de BugcheckDataSize deve ser DUMP_SIZE + BUGCHECK_DATA_SIZE_RESERVED e esse valor total deve ser menor ou igual a 4000.

O BUGCHECK_DATA_SIZE_RESERVED constante (definido em video.h) está disponível no Microsoft Windows Server 2003 e em ambientes de build posteriores. No ambiente de build do Windows XP SP1, use 48 em vez de BUGCHECK_DATA_SIZE_RESERVED.

O driver de miniporte pode cancelar o registro de um retorno de chamada registrado anteriormente chamando essa função, especificando NULL para o parâmetro Callback ou zero para o parâmetro DataSize .

Para obter mais informações, consulte Suporte ao driver de porta de vídeo para retornos de chamada de verificação de bugs.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows XP SP1 e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Área de Trabalho
Cabeçalho video.h (inclua Video.h)
Biblioteca Videoprt.lib
DLL Videoprt.sys
IRQL PASSIVE_LEVEL

Confira também

HwVidBugcheckCallback