Как вывести информацию о трафике (IP-адрес, порт и т. д.) в файл журнала с помощью Windows Filtering Platform и Windows Driver Development Kit?

Я работаю над драйвером, использующим WDK, который будет отслеживать сетевой трафик и выводить его в файл журнала.

В настоящее время я пытаюсь изменить пример inspect, приведенный в каталоге WinDDK.

Кажется, я не могу вызвать printf, fprintf и т. д. из-за ошибки компоновщика:

неразрешенный внешний символ __imp_printf ...

Есть ли другой способ вывода информации о трафике в файл журнала? Я неправильно подключаю какую-то библиотеку?

Спасибо


person Joe Mansour    schedule 25.01.2011    source источник


Ответы (1)


Ну, вы пишете драйверы KernelMode, поэтому вам нужно вызвать DbgPrint, что эквивалентно printf в c.

printf(format, params) -> DbgPrint(format, params)

Вам нужно будет использовать инструмент WinDbg или DbgView для просмотра отладочных сообщений.

Чтобы сделать дамп в файл, вы должны сначала открыть файл с помощью функции CreateFile. Как только дескриптор открыт и действителен, вы можете писать в него с помощью функции WriteFile.

person fadedreamz    schedule 31.03.2012