DebugView не фиксирует вывод KdPrint - PullRequest
       121

DebugView не фиксирует вывод KdPrint

0 голосов
/ 05 августа 2020

Я не могу заставить DbgView.exe правильно работать на моей Windows 10 64-битной виртуальной машине v2004. Программа не захватывает сообщения ядра от драйвера при использовании KdPrint, но отлично работает с DbgPrint. Я уже пробовал «bcdedit / debug on», добавляя «Фильтр печати отладки» в редактор реестра и перезагружая его, обеспечивая подробный вывод ядра. Я также пробовал на своей главной машине, результат тот же. Это очень простой драйвер, который нужно загружать и выгружать только из книги. Windows Программирование ядра.

Это работает

DbgPrint("Driver initialized.\n");

Это не

KdPrint(("Driver initialized.\n"));

Любая помощь будет принята с благодарностью!

1 Ответ

0 голосов
/ 05 августа 2020

Перейдите к KdPrint, и вы увидите маги предварительной обработки c.

#if DBG 

#define KdPrint(_x_) DbgPrint _x_
#define KdPrintEx(_x_) DbgPrintEx _x_ 
#define vKdPrintEx(_x_) vDbgPrintEx _x_
#define vKdPrintExWithPrefix(_x_) vDbgPrintExWithPrefix _x_
#define KdBreakPoint() DbgBreakPoint() 

#define KdBreakPointWithStatus(s) DbgBreakPointWithStatus(s)

#else 

#define KdPrint(_x_)
#define KdPrintEx(_x_) 
#define vKdPrintEx(_x_)
#define vKdPrintExWithPrefix(_x_)
#define KdBreakPoint() 

#define KdBreakPointWithStatus(s)

#endif // DBG wudfwdm

Это означает, что если вы компилируете в режиме Release , ничего не произойдет с KdPrint.

Значит, это не проблема DbgView.

...