структура KSOBJECT_CREATE_ITEM (ks.h)
Структура KSOBJECT_CREATE_ITEM используется для поиска строки, переданной в запрос создания.
Синтаксис
typedef struct {
PDRIVER_DISPATCH Create;
PVOID Context;
UNICODE_STRING ObjectClass;
PSECURITY_DESCRIPTOR SecurityDescriptor;
ULONG Flags;
} KSOBJECT_CREATE_ITEM, *PKSOBJECT_CREATE_ITEM;
Члены
Create
Содержит функцию создания диспетчера для этого конкретного базового класса объектов. См. DRIVER_OBJECT для подписи этого типа функции.
Context
Указывает на буфер, который можно использовать для хранения сведений о контексте конкретного типа объекта. Дополнительные сведения приведены в разделе "Примечания" ниже.
ObjectClass
Указывает на строку Юникода, которая идентифицирует класс объекта. Это строка, используемая для регистрации в PnP для определенного класса объекта, поддерживаемого этим устройством.
SecurityDescriptor
Содержит указатель на SECURITY_DESCRIPTOR для этого типа объекта, в противном случае NULL. Если используется безопасность, это должно быть освобождено, если тип объекта больше не используется. Это должно использовать память пула и не может быть предоставлен общий доступ, так как она может быть заменена. Если это изменено, обновляется элемент флагов. Необязательный.
Flags
Указывает тип запроса. Флаги могут содержать значения, перечисленные в следующей таблице.
Флаг | Описание |
---|---|
KSCREATE_ITEM_SECURITYCHANGED | Указывает, что дескриптор безопасности для этого типа объекта был изменен и должен быть сохранен. |
KSCREATE_ITEM_WILDCARD | Указывает, что этот элемент создания представляет подстановочный знак, используемый для любых запросов на создание, которые не соответствуют другим элементам создания. Порядок записи подстановочной карточки в списке элементов создания не имеет значения. Только одна запись с подстановочными знаками допустима в любом списке элементов создания. |
KSCREATE_ITEM_NOPARAMETERS | Указывает, что этот элемент создания не разрешает передавать параметры и завершается ошибкой, если они найдены. Как правило, параметры создания передаются обработчику создания. Это нельзя использовать с флагом подстановочной карточки. |
Замечания
Указатель на структуру KSOBJECT_CREATE_ITEM помещается в элемент DriverContextIrp->Tail.Overlay перед созданием объекта. Этот указатель можно получить с помощью макроса KSCREATE_ITEM_IRP_STORAGE. Этот макрос и связанные макросы включены в ks.h.
Мини-driver может получить этот указатель при создании нового объекта для проверки поля контекста.
Требования
Требование | Ценность |
---|---|
заголовка | ks.h (include Ks.h) |