r0 - создание потока

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by gevara, 21 May 2007.

  1. gevara

    gevara Elder - Старейшина

    Joined:
    29 Nov 2006
    Messages:
    47
    Likes Received:
    7
    Reputations:
    5
    может ли DriverEntry функция создавать потоки? при этом необходимо, чтобы поток продолжал работать, а функция DriverEntry уже завершилась.
    Пробовал таким образом:

    Code:
    void Func(PVOID a)
    {
    LARGE_INTEGER delay;
    delay.QuadPart = SEC(1000);
    while(1)
    KeDelayExecutionThread(KernelMode,0,&delay);
    }
    //////////////////////////////////////////
    NTSTATUS DriverEntry(..)
    {
    PsCreateSystemThread(Func);
    return STATUS_SUCCESS;
    }
    При этом ринг3 приложение, загружающее драйвер виснет... Не понимаю почему это происходит.