Зависит от того, на каком IRQL вы работаете. На PASSIVE_LEVEL вы можете попробовать открыть файл, например:
UNICODE_STRING usname;
IO_STATUS_BLOCK iostatus;
OBJECT_ATTRIBUTES oa;
HANDLE hfile=NULL;
RtlInitUnicodeString(&usname, L"\\Device\\NDMP2"); // specify your device name here!!!
InitializeObjectAttributes(&oa, &usname, OBJ_CASE_INSENSITIVE | OBJ_KERNEL_HANDLE, NULL, NULL);
NTSTATUS status = ZwOpenFile(&hfile, GENERIC_READ, &oa, &iostatus, 0, 0);
if (status == 0 && hfile)
{
// opened OK - device exists
ZwClose(hfile);
}
else
{
// no such device and/or error
}