entry.c

来自「一个类似windows」· C语言 代码 · 共 60 行

C
60
字号
/*
    This doesn't do much yet...
*/

#include <debug.h>

#define InPassiveIrql() \
    (KeGetCurrentIrql() == IRQL_PASSIVE_LEVEL)


NTSTATUS AudioDeviceControl(
    IN PDEVICE_OBJECT device,
    IN PIRP irp
)
{
    return STATUS_SUCCESS;
}


NTSTATUS AudioAddDevice(
    IN PDRIVER_OBJECT driver,
    IN PDEVICE_OBJECT device
)
{
    DPRINT("AudioAddDevice called\n");

    if ( ! IsPassiveIrql() )
    {
        /* What do we do?! */
        /* RtlAssert("FAIL", __FILE__, __LINE__, "?" */
    }
    
    return STATUS_SUCCESS;
}

VOID AudioUnload(
    IN PDRIVER_OBJECT driver
)
{
    DPRINT("AudioUnload called\n");
}



NTSTATUS STDCALL
DriverEntry(
    IN PDRIVER_OBJECT driver,
    IN PUNICODE_STRING registry_path
)
{
    DPRINT("Wdmaud.sys loaded\n");

    driver->DriverExtension->AddDevice = AudioAddDevice;
    driver->DriverUnload = AudioUnload;

    driver->MajorFunction[IRP_MJ_DEVICE_CONTROL] = AudioDeviceControl;

    return STATUS_SUCCESS;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?