|
|
| Посл.отвђт | Сообщенiе |
|
|
Дата: Окт 12, 2004 13:44:09 · Поправил: nike А для чего при написании драйвера нужен модуль отладочного вывода? |
|
|
Дата: Окт 12, 2004 18:52:38 Если скажешь, что это такое, может я скажу для чего :) |
|
|
Дата: Окт 12, 2004 19:22:03 Это есть модуль, который генерирует Kernel Mode Debug Output через те самые Debug Output API типа DbgPrint и тд... Собственно такой код в драйвере иметь нужно чтоб дебагить проще было самому же, иначе после каждого бсода репу чесать... Короче, в мсдн описаны API http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ddtoo ls/hh/ddtools/DebugFns_c5c14a74-7c14-4876-8ffb-d82dddd3e152.xml.asp у Руссиновича есть утила для мониторинга этого отладочного вывода, уже заточенная под XP SP2 http://www.sysinternals.com/ntw2k/freeware/debugview.shtml ну и понятное дело она не единственная. |
|
|
Дата: Окт 13, 2004 12:10:18 Т.е., ты хочешь сказать, что если я просто воткну DbgPrint - это типа и есть "Модуль отладочного вывода"?! |
|
|
Дата: Окт 13, 2004 16:41:19 · Поправил: Volynkin хех... ну чтото типа того. Вот только что мешает обернуть тот же DbgPrint в макрос типа:
#if DBG
#define DebugPrint(_x_) \
DbgPrint("Packet type - "); \
DbgPrint _x_;
#else
#define DebugPrint(_x_)
#endif
для простого перехода от дебага к релизу и назад. Или например: #if DBG #define TRAP() DbgBreakpoint() #else #define TRAP() #endif и так далее добавляя соль/сахар по вкусу. Ну а потом все это завернуть в какой нибудь хедер и будет тебе счастье - "модуль отладочного вывода". |
|
|
Дата: Окт 13, 2004 16:48:44 · Поправил: Four-F Ну все так и делают, но никто не называет это "модулем отладочного вывода". Просто Debug Build и всё. |
|
|
Дата: Окт 13, 2004 17:21:16 И это верно, мы так его и называем. Вот только nike вычитал об этом в какой то умной книжке или руководстве по DDK, где они это зовут "Отладочный вывод" aka "Debug Output", что собственно и есть поток данных с драйвера в рантайме. Посмотри хотябы тот же DebugView (ссылка выше). Там у него Debug Output через слово идет. Ну а модуль это и есть враппер всевозможных комбинаций макросов исключительно для чистоты кода. |
|
Powered by miniBB 1.6 © 2001-2002
Время загрузки страницы (сек.): 0.057 |