STATUS_OBJECT_PATH_SYNTAX_BAD при создании евента

Тема в разделе "WASM.NT.KERNEL", создана пользователем Weberd, 25 июн 2007.

  1. Weberd

    Weberd New Member

    Публикаций:
    0
    Регистрация:
    14 июн 2007
    Сообщения:
    67
    Код (Text):
    1.     OBJECT_ATTRIBUTES EventOA;
    2.     UNICODE_STRING ustrEventName;
    3.  
    4.     RtlInitUnicodeString(&ustrEventName, L"MyEventsFakeName");
    5.     InitializeObjectAttributes(&EventOA, &ustrEventName, OBJ_CASE_INSENSITIVE , NULL, NULL);
    6.     st = ZwCreateEvent(&commEvent, EVENT_ALL_ACCESS, &EventOA, SynchronizationEvent, false);   
    7.    
    8.     DPRINT("CreateEvent result %Lx", st);
     
  2. Four-F

    Four-F New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2002
    Сообщения:
    1.237
    Код (Text):
    1. RtlInitUnicodeString(&ustrEventName, L"\\BaseNamedObjects\\MyEventsFakeName");
    Но проще наверное IoCreateSynchronizationEvent.
     
  3. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    Four-F
    ну можно afaik просто \\ подставить. Тогда в корне создастся.
     
  4. Four-F

    Four-F New Member

    Публикаций:
    0
    Регистрация:
    31 авг 2002
    Сообщения:
    1.237
    Ну в общем то да, теоретически можно использовать любой каталог в пространстве имен диспетчера объектов. Хотя Windows с каждой новой версией становится всё более параноидальной.

    "The driver creates a named event object in the \\BaseNamedObjects object directory. You can open a kernel-mode event named \\BaseNamedObjects\Xxx in user mode under the name Xxx."

    Т.к. это документировано, то есть гарантия, что будет работать и дальше.