struttura KSOBJECT_CREATE_ITEM (ks.h)
La struttura KSOBJECT_CREATE_ITEM viene usata per cercare la stringa passata a una richiesta di creazione.
Sintassi
typedef struct {
PDRIVER_DISPATCH Create;
PVOID Context;
UNICODE_STRING ObjectClass;
PSECURITY_DESCRIPTOR SecurityDescriptor;
ULONG Flags;
} KSOBJECT_CREATE_ITEM, *PKSOBJECT_CREATE_ITEM;
Membri
Create
Contiene la funzione create dispatch per questa particolare classe oggetto di base. Vedere DRIVER_OBJECT per la firma di questo tipo di funzione.
Context
Punta a un buffer che può essere usato per archiviare informazioni di contesto specifiche del tipo di oggetto. Altre informazioni sono disponibili nella sezione Osservazioni di seguito.
ObjectClass
Punta a una stringa Unicode che identifica la classe oggetto. Si tratta della stringa usata per eseguire la registrazione con PnP per una determinata classe di oggetto supportata dal dispositivo.
SecurityDescriptor
Contiene un puntatore a un SECURITY_DESCRIPTOR per questo tipo di oggetto; in caso contrario, NULL. Se viene utilizzata la sicurezza, questa operazione deve essere liberata quando il tipo di oggetto non viene più utilizzato. Questa operazione deve usare la memoria del pool e non può essere condivisa, perché può essere sostituita. Se questa operazione viene modificata, l'elemento flag di viene aggiornato. Opzionale.
Flags
Specifica il tipo di richiesta. I flag possono avere i valori elencati nella tabella seguente.
Bandiera | Descrizione |
---|---|
KSCREATE_ITEM_SECURITYCHANGED | Indica che il descrittore di sicurezza in questo tipo di oggetto è stato modificato e deve essere salvato in modo permanente. |
KSCREATE_ITEM_WILDCARD | Indica che questo elemento di creazione rappresenta un carattere jolly utilizzato per tutte le richieste di creazione che non corrispondono ad altri elementi di creazione. L'ordinamento della voce con caratteri jolly nell'elenco di elementi di creazione è irrilevante. Solo una singola voce con caratteri jolly è valida in qualsiasi elenco di elementi di creazione. |
KSCREATE_ITEM_NOPARAMETERS | Indica che questo elemento di creazione non consente il passaggio di parametri e ha esito negativo se vengono trovati. In genere, i parametri di creazione vengono passati al gestore di creazione. Non è possibile utilizzare questa opzione con un flag con caratteri jolly. |
Osservazioni
Un puntatore alla struttura KSOBJECT_CREATE_ITEM viene posizionato nel membro DriverContext di Irp->Tail.Overlay prima della creazione dell'oggetto. È possibile accedere a questo puntatore usando la macro KSCREATE_ITEM_IRP_STORAGE. Questa macro e le macro correlate sono incluse in ks.h.
Il minidriver potrebbe recuperare questo puntatore durante la creazione di un nuovo oggetto per esaminare il campo contesto.
Fabbisogno
Requisito | Valore |
---|---|
intestazione | ks.h (include Ks.h) |