Ошибки при создании драйверов

Тема в разделе "WASM.NT.KERNEL", создана пользователем SashaD, 2 авг 2007.

  1. SashaD

    SashaD New Member

    Публикаций:
    0
    Регистрация:
    2 авг 2007
    Сообщения:
    3
    Я попробовал примеры перевисти на С программы написаные Four-F
    и у меня постоянно во всех функциях выдает STATUS_ACCESS_VIOLATION если можно разясните почему так
     
  2. wasm_test

    wasm_test wasm test user

    Публикаций:
    0
    Регистрация:
    24 ноя 2006
    Сообщения:
    5.582
    Телепатов тут пока что нету, поэтому будьте так любезны привести исходный код.
     
  3. SashaD

    SashaD New Member

    Публикаций:
    0
    Регистрация:
    2 авг 2007
    Сообщения:
    3
    спасибо что отозвались!
    с удовольствием,

    void ThreadProc(PVOID param)
    {
    DbgPrint("\t\t\tThreadProc work");
    };

    NTSTATUS CreateNewThreads()
    {
    NTSTATUS status = STATUS_SUCCESS;
    PHANDLE hThread = NULL;
    DbgPrint("\nTimerWorks: Entering StartThread\n");
    status = PsCreateSystemThread(hThread,
    THREAD_ALL_ACCESS, NULL, NULL, NULL, (PKSTART_ROUTINE)ThreadProc, NULL);
    if (NT_SUCCESS(status))
    {
    ObReferenceObjectByHandle( hThread, THREAD_ALL_ACCESS, NULL, KernelMode, &g_pkThread , NULL);
    ZwClose( hThread);
    DbgPrint("TimerWorks: Thread created\n");
    }
    else
    {
    DbgPrint("TimerWorks: Can't create Thread. Status: %08X\n", status);
    };
    DbgPrint( "\nTimerWorks: Leaving StartThread\n");
    return status;
    }

    В итоге:

    TimerWorks: Entering StartThread
    TimerWorks: Can't create Thread. Status: C0000005
     
  4. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    hThread указывает на 0, куда запишется хендл потока?
     
  5. SashaD

    SashaD New Member

    Публикаций:
    0
    Регистрация:
    2 авг 2007
    Сообщения:
    3
    Благодарю!

    запутался в двух соснах :)