estrutura KSOBJECT_CREATE_ITEM (ks.h)
A estrutura KSOBJECT_CREATE_ITEM é usada para pesquisar a cadeia de caracteres passada para uma solicitação de criação.
Sintaxe
typedef struct {
PDRIVER_DISPATCH Create;
PVOID Context;
UNICODE_STRING ObjectClass;
PSECURITY_DESCRIPTOR SecurityDescriptor;
ULONG Flags;
} KSOBJECT_CREATE_ITEM, *PKSOBJECT_CREATE_ITEM;
Membros
Create
Contém a função create dispatch para essa classe de objeto base específica. Consulte DRIVER_OBJECT para obter a assinatura desse tipo de função.
Context
Aponta para um buffer que pode ser usado para armazenar informações de contexto específicas do tipo de objeto. Informações adicionais estão na seção Comentários abaixo.
ObjectClass
Aponta para uma cadeia de caracteres Unicode que identifica a classe de objeto. Essa é a cadeia de caracteres que foi usada para registrar com PnP para uma classe específica de objeto compatível com esse dispositivo.
SecurityDescriptor
Contém um ponteiro para um SECURITY_DESCRIPTOR para esse tipo de objeto; caso contrário, NULL. Se a segurança for usada, isso deverá ser liberado quando o tipo de objeto não for mais usado. Isso deve usar a memória do pool e não pode ser compartilhado, pois pode ser substituído. Se isso for modificado, o elemento Flags será atualizado. Opcional.
Flags
Especifica o tipo de solicitação. Os sinalizadores podem ter os valores listados na tabela a seguir.
Sinalizador | Descrição |
---|---|
KSCREATE_ITEM_SECURITYCHANGED | Indica que o descritor de segurança nesse tipo de objeto foi alterado e deve ser persistido. |
KSCREATE_ITEM_WILDCARD | Indica que este item de criação representa uma cartão selvagem que é usada para solicitações de criação que não correspondem a nenhum outro item de criação. A ordenação da entrada de cartão selvagem na lista de itens de criação é irrelevante. Somente uma única entrada de cartão selvagem é válida em qualquer lista de itens de criação. |
KSCREATE_ITEM_NOPARAMETERS | Indica que esse item de criação não permite que nenhum parâmetro seja passado e falhará se algum for encontrado. Normalmente, os parâmetros de criação são passados para o manipulador de criação. Isso não pode ser usado com um sinalizador de cartão selvagem. |
Comentários
Um ponteiro para a estrutura KSOBJECT_CREATE_ITEM é colocado no membro DriverContext de Irp-Tail.Overlay> antes que o objeto seja criado. Você pode acessar esse ponteiro usando a macro KSCREATE_ITEM_IRP_STORAGE. Essa macro e macros relacionadas estão incluídas em ks.h.
O minidriver pode recuperar esse ponteiro ao criar um novo objeto para examinar o campo Contexto .
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | ks.h (inclua Ks.h) |