Как создать DRIVER_OBJECT для DriverEntry драйвера ?
От: AhRong  
Дата: 12.07.11 15:51
Оценка:
Покажите пожалуйста пример или посоветуйте.
Как создать DRIVER_OBJECT для DriverEntry драйвера ?

Пример кода из React Os:


    WCHAR NameBuffer[100];
    USHORT NameLength;
    UNICODE_STRING LocalDriverName;
    NTSTATUS Status;
    OBJECT_ATTRIBUTES ObjectAttributes;
    ULONG ObjectSize;
    PDRIVER_OBJECT DriverObject;

    /* Create a random name and set up the string*/
    NameBuffer = L"\\Driver\\1234567";
    LocalDriverName.Length = NameLength * sizeof(WCHAR);
    LocalDriverName.MaximumLength = LocalDriverName.Length + sizeof(UNICODE_NULL);
    LocalDriverName.Buffer = NameBuffer;

    /* Initialize the Attributes */
    ObjectSize = sizeof(DRIVER_OBJECT) + sizeof(EXTENDED_DRIVER_EXTENSION);
    InitializeObjectAttributes(&ObjectAttributes,
                               &LocalDriverName,
                               OBJ_PERMANENT | OBJ_CASE_INSENSITIVE,
                               NULL,
                               NULL);

    /* Create the Object */
    Status = ObCreateObject(KernelMode,
                            IoDriverObjectType,
                            &ObjectAttributes,
                            KernelMode,
                            NULL,
                            ObjectSize,
                            0,
                            0,
                            (PVOID*)&DriverObject);
    if (!NT_SUCCESS(Status)) return Status;


Ошибка возникает при вызове ObCreateObject. 0xC0000005.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.