Compartilhar via


Estrutura WMIREGINFOW (wmistr.h)

A estrutura WMIREGINFO contém informações fornecidas por um driver para registrar ou atualizar seus blocos de dados e blocos de eventos.

Sintaxe

typedef struct {
  ULONG       BufferSize;
  ULONG       NextWmiRegInfo;
  ULONG       RegistryPath;
  ULONG       MofResourceName;
  ULONG       GuidCount;
  WMIREGGUIDW WmiRegGuid[];
} WMIREGINFOW, *PWMIREGINFOW;

Membros

BufferSize

Indica o tamanho total dos dados de registro WMI associados a essa estrutura de WMIREGINFO, calculada da seguinte maneira: (sizeof(WMIREGINFO) + (GuidCount * sizeof(WMIREGGUID) + additionaldata). Dados adicionais podem incluir itens como o nome do recurso MOF, o caminho do registro e os nomes de instância estática para blocos.

NextWmiRegInfo

Se um driver manipular solicitações WMI em nome de outro driver, como um driver de classe pode em nome de um driver de miniclasse, NextWmiRegInfo indicará o deslocamento em bytes desde o início deste WMIREGINFO até a próxima estrutura de WMIREGINFO que contém informações de registro WMI para o outro driver. Caso contrário, NextWmiRegInfo é zero.

RegistryPath

Indica o deslocamento em bytes do início dessa estrutura para uma cadeia de caracteres Unicode contada que especifica o caminho do registro passado para a rotina de DriverEntry do driver. A cadeia de caracteres deve ser alinhada em um limite USHORT. Esse membro deve ser definido apenas em resposta a uma solicitação de registro WMI (IRP_MN_REGINFO ou IRP_MN_REGINFO_EX com Parameters.WMI.DataPath definido como WMIREGISTER).

MofResourceName

Indica o deslocamento em bytes do início dessa estrutura para uma cadeia de caracteres Unicode contada que especifica o nome do recurso MOF no arquivo de imagem do driver. A cadeia de caracteres deve ser alinhada em um limite USHORT. Esse membro deve ser definido apenas em resposta a uma solicitação de registro WMI (IRP_MN_REGINFO ou IRP_MN_REGINFO_EX com Parameters.WMI.DataPath definido como WMIREGISTER).

GuidCount

Indica o número de estruturas de WMIREGGUID na matriz em WmiRegGuid.

WmiRegGuid

É uma matriz de estruturas deGuidCount WMIREGGUID.

Observações

Em resposta a uma solicitação de registro (IRP_MN_REGINFO ou IRP_MN_REGINFO_EX com Parameters.WMI.DataPath definido como WMIREGISTER), um driver cria pelo menos uma estrutura de WMIREGINFO e grava a estrutura WMIREGINFO no buffer em IrpStack->Parameters.WMI.Buffer. A estrutura de WMIREGINFO contém uma matriz de estruturas WMIREGGUID, uma para cada bloco de dados ou bloco de eventos exposto pelo driver.

Se o driver manipular solicitações WMI em nome de outro driver, ele criará outro WMIREGINFO contendo uma matriz de estruturas WMIREGGUID para cada bloco exposto pelo outro driver, define o membro NextWmiRegInfo do primeiro WMIREGINFO para um deslocamento em bytes desde o início do primeiro WMIREGINFO até o início do próximo WMIREGINFO no buffer, e grava ambas as estruturas no buffer. O driver indica o tamanho total de estruturas WMIREGINFO e dados associados quando chamadas IoCompleteRequest para concluir o IRP.

Um driver pode usar a mesma estrutura de WMIREGINFO para remover ou atualizar blocos em resposta a uma solicitação de atualização (IRP_MN_REGINFO ou IRP_MN_REGINFO_EX com Parameters.WMI.DataPath definido como WMIUPDATE). Se WMIREG_FLAG_REMOVE_GUID for definido no Flags membro de um WMIREGGUID, o WMI removerá esse bloco da lista de blocos registrados anteriormente pelo driver. Se WMIREG_FLAG_REMOVE_GUID estiver claro, a WMI atualizará as informações de registro para esse bloco somente se outros membros WMIREGGUID tiverem sido alterados; caso contrário, a WMI não mudará para suas informações de registro para esse bloco.

Requisitos

Requisito Valor
cabeçalho wmistr.h (inclua Wmistr.h)

Consulte também

IRP_MN_REGINFO

IRP_MN_REGINFO_EX

IoCompleteRequest

WMIREGGUID