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

DDK是什么,驱动是否都要用DDK写

阅读更多

准备开始window下的驱动开发了。

先转个文章热身热身,学前班。

DDK是什么,驱动是否都要用DDK写

DDK是什么,驱动是否都要用DDK写 收藏
DDK是Device Development Kit,设备开发包的意思。如果你想开发一个设备驱动程序,如显卡驱动程序,就必须使用DDK。DDK没有包括在VC++中,其主页为http://www.microsoft.com/whdc/devtools/ddk/default.mspx,通常需要定购MSDN才能获得。你也可以下载KMDF(http://www.microsoft.com/whdc/driver/WDF/KMDF_pkgdwn.mspx?),其中包括了Windows Server 2003 SP1的DDK。Windows 98的DDK可以从http://download.microsoft.com/download/win98SE/Install/Gold/W98/EN-US/98DDK.EXE下载。

驱动编写可以分多种情况,下面分别讨论:
1、串口通讯。
Windows自身带有串口通讯的API,所以一般串口通讯不需要编写单独的驱动程序,只需要调用系统功能就可以了。VB带有MSCOMM控件(QA000388 "MSComm无法在中文Windows 95下传递二进制数据"),而VC++可以参考QA000162 "在VC中如何开发串囗",Delphi可以参考QA002595 "在Delphi中怎样控制 Modem"。绝大多数串口外置的MODEM的驱动程序就是一个.inf文件(这个文件的规范在DDK中有说明),而没有实际的驱动文件。不过软猫不能使用这个办法。如果ISDN设备是通过串口的,也可以仿照MODEM编写这样的串口文件(当然如果要支持CAPI,就编写使用CAPI SDK编写驱动程序)。
2、使用现成的驱动软件包。
如果你的硬件是比较简单的数据采集卡这样的硬件,也可以使用一些现成的驱动软件包,这些软件包提供了一些基本的硬件操作功能,这样你可以免除使用DDK开发的苦恼。而且这些工具多数支持Delphi、VB、C++ Builder这样的软件,这样可以解决这些软件无法调用DDK编写驱动的问题。可以参考QA000335 "如何在VB中如何控制端口和物理地址"。这样的商业工具包括NTPort Library(http://china.zealsoft.com/cn/ntport/)、MemAccess Library(http://china.zealsoft.com/cn/memaccess/)、WinDriver等。
3、使用DDK编写
如果前两种情况都不适用,你就需要使用DDK编写了。每个Windows版本都有对应的DDK,其主页为http://www.microsoft.com/whdc/devtools/ddk/default.mspx,通常需要定购MSDN才能获得。你也可以下载KMDF(http://www.microsoft.com/whdc/driver/WDF/KMDF_pkgdwn.mspx?),其中包括了Windows Server 2003 SP1的DDK。Windows 98的DDK可以从http://download.microsoft.com/download/win98SE/Install/Gold/W98/EN-US/98DDK.EXE下载。。当然你应该根据自己使用的操作系统进行选择。Win9x的主要驱动都是VxD类型的,可以在Win95/98/Me下使用,但不能在WinNT/2000下使用。WinNT的驱动一般都是.sys文件,Win2000可以兼容WinNT驱动,但一般不能在Win9x下使用。所以如果你要支持Win9x和WinNT,需要编写两类驱动程序。USB设备的驱动程序是WDM类型的,扩展名为.sys,但只能在Win98/Me/2000下使用。
Win98 DDK和Windows 2000的DDK安装比较简单,而且和VC++配合的比较好,最好使用这两个DDK包。Win95 DDK和WinNT DDK默认安装需要Win32 SDK,如果没有,需要手工修改环境变量或SETENV.BAT,略微麻烦一些,最好不使用。除了安装DDK,还需要VC++进行编译,最好是VC++ 6.0。其他软件都不是必须的。当然,最好有SoftICE作为调试工具。
驱动的编写同一般程序有很大不同,所以建议买本书,参考QA001005 "有关DDK编程的书籍"。你也可以参考QA002697 "PCI设备Windows通用驱动程序设计",以了解一个大概。
此外,也有一些DDK的增强工具,如DriverWorks(http://www.numega.com/),这个软件和DDK相比,就如同MFC和API。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jiazhen/archive/2006/12/07/1433360.aspx

分享到:
评论

相关推荐

    DDK开发协议驱动程序.zip

    WDM(Windows Driver Model)是一种在Windows操作系统中广泛使用的驱动程序模型,支持即插即用(Plug and Play)和电源管理等功能。 在Windows系统中,驱动程序是操作系统与硬件设备之间的桥梁,它们负责翻译操作...

    DDK XP 驱动程序编写用的ddk

    ### DDK XP驱动程序编写用的DDK #### 概述 DDK(Driver Development Kit)是微软为Windows操作系统提供的一套开发工具包,用于帮助开发者编写设备驱动程序。随着Windows XP系统的广泛应用,针对该系统的DDK也成为了...

    用DDK开发协议驱动程序

    DDK包含了编译器、链接器、调试器等工具,以及大量的头文件、库文件和示例代码,这些都是开发驱动程序的基础。开发者可以利用这些工具构建、编译和调试驱动程序,确保其兼容性和稳定性。 开发协议驱动程序,首先...

    win xp 驱动开发DDK

    《Windows XP驱动开发DDK详解》 Windows XP驱动开发是一个技术含量高且复杂的领域,而DDK(Driver Development Kit...对于想要深入理解操作系统内核机制和硬件交互的工程师而言,掌握DDK的使用无疑是一项宝贵的技能。

    DDK下打印机驱动程序

    ### DDK 下打印机驱动程序开发详解 #### 一、引言 随着计算机技术的发展,打印机作为重要的输出设备,在办公及日常生活中扮演着不可或缺的角色。为了确保打印机能够与操作系统良好兼容,开发高质量的打印机驱动...

    DDK编写的PCI驱动

    DDK(Driver Development Kit)是微软提供的一套用于开发设备驱动程序的工具集,它包含了大量的头文件、库文件以及编译和调试驱动程序所需的工具。在“DDK编写的PCI驱动”中,我们主要讨论的是如何利用DDK来编写针对...

    DDK开发协议驱动程序.rar_ddk_ddk下载_虚拟磁盘_驱动_驱动程序

    4. PnP(Plug and Play)和PM(Power Management):DDK驱动开发需要考虑设备的即插即用和电源管理功能,确保设备在系统中动态加入、移除时能正常工作,并遵循系统电源策略。 5. 调试工具:DDK提供如WinDbg这样的...

    用DDK开发WindowsUSB驱动程序_杨成

    用DDK开发WindowsUSB驱动程序_杨成

    DDK.rar_DDK-151 在线_ddk-151_ddk170_ddkaw

    DDK.rar_DDK-151 在线_ddk-151_ddk170_ddkaw 是一个关于驱动开发的资源包,其中包含了DDK(Driver Development Kit)的使用和自定义VC6驱动向导的相关教程。DDK是微软提供的用于开发、调试和测试系统驱动程序的工具...

    驱动开发工具DDK for win98

    驱动程序安装通常需要使用INF文件,DDK也提供了创建和管理INF文件的工具。 总的来说,"驱动开发工具DDK for win98"是针对Windows 98系统进行驱动程序开发的重要资源集合,它包含了从开发到调试再到部署的全套工具和...

    ddk 库和头文件 驱动开发

    在驱动程序的源代码中,通过包含这些头文件,开发者可以声明并使用DDK提供的函数。 在压缩包的文件列表中,`NewMDT.exe`可能是一个Microsoft Deployment Toolkit,用于部署和更新系统。`-trunk-tools_win32-dm-...

    DDK硬盘驱动开发Demo

    本篇文章将深入探讨如何在Windows XP平台上使用DDK进行硬盘驱动的开发,同时针对提供的"DDK硬盘驱动开发Demo"进行解析。 首先,我们要理解DDK的作用。DDK包含了编译器、链接器、调试器以及其他必要的工具,这些工具...

    用DDK写驱动程序.pdf

    但是根据标题和描述以及标签,我可以提供有关使用DDK(驱动程序开发工具包)编写驱动程序的知识点。 DDK(Driver Development Kit),是微软提供的一套开发工具和文档,用于开发Windows操作系统的硬件驱动程序。...

    DDK ddk 调试安装文档 ddk vs2005 ddk vs2008 ddk win2003 ddk

    本文将基于一份关于“DDK ddk调试安装文档 ddk vs2005 ddk vs2008 ddk win2003”的资料,详细介绍如何在Windows 2003环境下配置DDK环境,并使用Visual Studio 2005或2008进行驱动开发。 #### 二、环境搭建 **1. ...

    usb ddk 读写usb

    USB DDK(Device Driver Development Kit)是微软提供的一套用于开发设备驱动程序的工具和文档,特别是针对USB设备。在Windows操作系统中,DDK为开发者提供了编写、调试和测试驱动程序所需的所有资源。USB DDK使得...

    Windows XP 进行驱动开发及研究必装DDK

    DDK的主要组件包括编译器、链接器、调试器以及大量的头文件和库,这些都对驱动开发至关重要。 首先,安装DDK的过程需要遵循一定的步骤。用户需下载并运行安装程序,选择合适的安装路径,然后等待安装完成。安装完毕...

    winddk.rar_ddk开发_win ddk_windows DDK_驱动_驱动开发

    《Windows DDK驱动开发详解》 Windows Driver Development Kit(DDK)是微软为开发者提供的一套工具和文档,用于创建和调试驱动程序。这个压缩包文件"winddk.rar"包含了DDK开发所需的必要资源,包括"winddk.chm",...

    DDK驱动简单例子

    本教程以"DDK驱动简单例子"为主题,通过C++语言来介绍如何编写驱动,并实现与驱动的通信功能,如在驱动初始化时创建1.txt文件。我们将深入探讨以下几个关键知识点: 1. **驱动程序基础**: - 驱动程序是操作系统和...

    windows ddk kmdf驱动示例代码

    Windows DDK(Driver Development Kit)是微软为开发者提供的一个工具集,用于开发、调试和测试Windows操作系统的设备驱动程序。KMDF(Kernel-Mode Driver Framework)是DDK中的一个关键部分,它提供了一种现代驱动...

    VC写的VirtualCOM虚拟串口驱动,基于DDK,在VC环境下打开工程文件直接编译,可以扩充功能.rar

    本文将深入探讨由VC++开发的VirtualCOM虚拟串口驱动,它基于微软的设备驱动开发工具包(DDK),并在MFC框架下构建,方便在Visual Studio环境中进行编译和扩展。 首先,让我们理解虚拟串口的基本概念。虚拟串口是...

Global site tag (gtag.js) - Google Analytics