`
mmdev
  • 浏览: 13218851 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

开发驱动时用到的内核打印函数KdPrint 的使用方法

 
阅读更多

转载自: http://blog.csdn.net/wjcsharp/article/details/6161712

KdPrint使用方法类似printf,注意KdPrint((" ", ));使用的是双括号。

用KdPrint(())来代替printf 输出信息。这些信息可以在DbgView 中看到。KdPrint(())自身是一个宏,
为了完整传入参数所以使用了两重括弧。这个比DbgPrint 调用要稍好。因为在free 版不被编译。

DebugPrint格式说明符

分享到:
评论

相关推荐

    Windows驱动开发技术详解示例

    2. KDPrint:内核模式下的调试输出函数,用于跟踪和诊断问题。 3. verifier:驱动验证器,自动检测驱动中的常见错误。 六、示例代码分析 压缩包中的“Windows驱动开发技术详解示例”可能包含了具体的驱动开发实例,...

    NDIS协议驱动开发

    7. **调试技术**:调试NDIS驱动通常使用KDPrint、NDIS_TRACE、WinDbg等工具,理解如何使用这些工具可以加速问题排查。 8. **并发性和锁管理**:由于NDIS驱动可能在多线程环境中运行,因此需要理解和掌握并发访问...

    VC.NET驱动开发.

    6. **调试技巧**:使用WinDbg等调试工具进行内核模式驱动调试,通过 KDPrint 和DbgPrint 函数输出调试信息。对于用户模式驱动,可以利用Visual Studio的调试功能。 7. **驱动签名**:为了确保驱动的安全性,微软...

    NDIS 驱动程序开发指南

    8. **WDF(Windows Driver Frameworks)集成**:微软推荐使用WDF来简化驱动开发,NDIS驱动可以通过KMDF(Kernel-Mode Driver Framework)或UMDF(User-Mode Driver Framework)实现,它们提供了一套抽象层,使得驱动...

    驱动编程+驱动逆向+驱动保护

    驱动入口函数DriverEntry 入口函数参数DriverObject和RegistryPath B、书写SOURCES文件 C、书写makefile文件 D、用DDK-Build环境编译 1.3.2为DDK_HelloWorld添加卸载例程-10课 A、输出调试信息-KdPrint B、...

    NDIS协议驱动源程序和注释

    10. **调试技术**:驱动开发中的调试技巧,如使用WinDbg工具,理解KDPrint等内核调试输出。 通过这个压缩包,开发者可以深入理解NDIS协议驱动的工作原理,学习如何编写和调试此类驱动程序,这对于开发网卡驱动或者...

    Windows驱动程序编程.rar

    6. **DDK(Driver Development Kit)/WDK(Windows Driver Kit)**:开发Windows驱动程序时,通常需要使用DDK或WDK,这些工具集包含了编译、调试驱动所需的所有工具和头文件。 7. **调试技术**:由于驱动运行在核心...

    Windows驱动开发技术详解(源代码)

    利用WinDbg等工具,以及内建的调试支持如KDPrint,是驱动开发过程中的必备技能。 通过《Windows驱动开发技术详解》中的源代码,读者可以深入学习如何实现这些概念,了解实际的驱动程序设计和实现。源代码通常包括...

    驱动视频:windows驱动讲稿1.3 - HelloDriver

    此外,还了解了调试输出的基本概念和技术,以及如何使用`DbgPrint()`和`DbgPrintEx()`等函数来调试驱动程序。 #### 六、下期预告 下一篇文章将会介绍CY001驱动开发板,这是一款非常适合初学者使用的驱动学习工具。...

    黑防VIP驱动教程配套代码

    例如,Windows中的驱动程序开发涉及WDK(Windows Driver Kit)和DDK(Driver Development Kit),而Linux则使用kernel.org发布的内核源码和相关开发工具。 3. **编程语言**:驱动程序通常使用C或C++编写,因为它们...

    Windows驱动开发技术

    * 功能描述:初始化驱动程序,定位和申请硬件资源,创建内核对象 * 参数列表: pDriverObject:从I/O管理器中传进来的驱动对象 pRegistryPath:驱动程序在注册表的中的路径 * 返回 值:返回初始化驱动状态 ************...

    ISCC2012内核5题解

    值得注意的是,这里使用了`__asm int 3`在驱动加载时设置了一个断点,便于后续的调试分析。 #### 工作队列结构体解析 为了更好地理解工作队列的工作原理,我们需要先了解`WORK_QUEUE_ITEM`结构体。该结构体定义...

    键盘过滤驱动的一段代码

    2. **引用驱动对象**:使用`ObReferenceObjectByName`函数打开`kbdclass`驱动对象。此函数接收驱动名称、访问标志、对象类型和其他参数,并返回指向`PDRIVER_OBJECT`类型的指针。 3. **创建过滤器设备**:通过`...

    NDIS_driver.rar_NDIS 网络拦截_NDIS DDK _ddk packet protocol _ndis_n

    NDIS_DDK(Driver Development Kit)是开发NDIS驱动程序时的重要参考资料,它包含了详细的文档、示例代码以及编译工具,帮助开发者理解和构建自己的驱动程序。DDK中的Packet代码示例通常用于演示如何使用NDIS API来...

    bulkusb源码

    8. **调试支持**:为了便于调试,源码可能包含调试消息输出和使用DbgPrint或KDPrint等调试工具的代码。 9. **错误处理**:良好的驱动程序需要能够优雅地处理各种错误情况,源码中会有错误检查和异常处理的机制。 ...

    Linux、Mac、Windows、Android、IOS操作系统开发和调试案例和项目.docx

    **查看日志**:使用 `dmesg` 命令查看模块加载和卸载时产生的内核日志。 **代码示例**: ```c // hello.c #include #include #include MODULE_LICENSE("GPL"); MODULE_AUTHOR("Your Name"); MODULE_...

    IDTshow_handleh3v_givingsk5_rootkit_

    描述中提到的“在内核层遍历IDT表,然后用kdprint打印出来”,这是指通过编程方式访问和打印出系统的中断描述符表,以检查是否有未经授权的修改。kdprint 是Windows调试工具Kit (WinDbg) 中的一个命令,用于在内核...

    DebugView.zip

    它支持接收来自Win32 DbgPrint、KdPrint和RtlDebugPrint等函数的输出,同时也可以配合其他调试器(如WinDbg)一起使用,提供更全面的调试环境。 dbgview.chm是DebugView的帮助文档,包含了关于如何使用该工具的详细...

    ixdpg425-pci.rar_驱动编程_Visual_C++_

    这里提到的使用Visual C++,可能是采用KMDF或直接编写内核模式驱动。 2. **PCI配置空间**:每个PCI设备都有一个配置空间,包含了设备ID、子系统ID等识别信息,以及中断线路、基地址寄存器等设置。驱动需要读取这些...

    USB驱动编写的全过程[参考].pdf

    ### USB驱动编写的全过程 #### 概述 本文档旨在介绍如何在Windows环境下...通过以上步骤,我们完成了从无到有的一个简单的USB驱动程序的开发过程。这对于希望深入理解Windows内核编程的人来说是非常宝贵的实践经验。

Global site tag (gtag.js) - Google Analytics