驱动开发利器Microsoft Windows Driver Kit 7.1.0下载

在Windows2000与WindowsXP系统采用是WINDDK来开发WINDOWS驱动程序,我手头也有WINDDK,可是从WindowsVista开始之后,一般采用MicrosoftW

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

在Windows 2000 与Windows XP 系统采用是WINDDK来开发WINDOWS驱动程序,我手头也有WINDDK,可是从Windows Vista开始之后,一般采用Microsoft Windows Driver简称(WDK)。这段时间刚好项目有用到USB HID,需要用到HID.lib库文件,因此下载了这个WDK7.1.0版本,采用HID.LIB,以及采用USB HID的目的,就是省去了PC端的驱动程序的编写,直接采用Windows内置的驱动程序,只需要了解USB HID通信数据包的机制即可。免去了安装驱动程序的烦恼。当然下位机也需要写一个USB HID的USB Device驱动。简单的说下USB HID的枚举吧:

一、枚举USB设备
  通过枚举USB控制器->枚举此控制器上的USB HUB->枚举HUB的各个端口->获得设备信息。
枚举控制器: 

wsprintf(HCName, "\\\\.\\HCD%d", HCNum);  
        hHCDev = CreateFile(HCName,  
                            GENERIC_WRITE,  
                            FILE_SHARE_WRITE,  
                            NULL,  
                            OPEN_EXISTING,  
                            0,  
                            NULL);  

计算机上的USB主控制器以HCD1,HCD2等命名。通过控制器名称,使用CreateFile 打开它。使用DeviceIoControl即可得到其驱动程序名,以及与它连接的HUB的名称。用CreateFile打开HUB,获得连接信息。再枚举HUB的各个端口即可获得连接的设备信息。

二、枚举HID设备
  HID设备是微软定义的标准人机接口规范。比如USB鼠标,USB游戏手柄等。不用查找具体设备的GUID,使用API HidD_GetHidGuid(&guidHID)即可得到GUID。有了GUID通过API SetupDiEnumDeviceInterfaces可获得是否有设备连接。如果此类设备连接通过SetupDiGetDeviceInterfaceDetail获得它的设备路径信息。使用CreateFile 打开它,通过HidD_GetAttributes获得其基本属性信息。使用DeviceIoControl可以获得更详细的属性。

注意:

从NTDDK\INC拷贝下列头文件  
   devioctl.h  
   usbdi.h  
   usbioctl.h  
   usb100.h  
   hidsdi.h  
   hidusage.h  
   hidpi.h  
从NTDDK\libchk\i386拷贝hid.lib,在PROJECT SETTING中添加hid.lib setupapi.lib  
/* 何问起 hovertree.com */

WDK下载地址一:

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=11800

WDK下载地址二:

http://www.microsoft.com/download/en/confirmation.aspx?displaylang=en&id=11800

推荐:http://www.cnblogs.com/roucheng/p/Chromium.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/120404.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 现有的人脸数据库介绍及下载链接

    现有的人脸数据库介绍及下载链接

  • jquery-uploadfile的使用「建议收藏」

    jquery-uploadfile的使用「建议收藏」jQueryFileUpload是一个Jquery文件上传组件,支持多文件上传、取消、删除,上传前缩略图预览、列表显示图片大小,支持上传进度条显示;支持各种动态语言开发的服务器端。官网链接:点击打开链接特点:拖放支持;上传进度条;图像预览;可定制和可扩展的;兼容任何服务器端应用平台(PHP,Python,RubyonRails,Java,Node.js,Goetc.)。使用方…

  • pip如何卸载包_命令行下载python包

    pip如何卸载包_命令行下载python包Python环境中单独使用pythonsetup.pyinstall安装的python包,可以通过pip命令卸载也可以手动删除安装文件。https://www.cndba.cn/dave/article/3719https://www.cndba.cn/dave/article/37191.Pip卸载:[dave@www.cndba.cndata]$pipuninstallp…

    2022年10月16日
  • 安卓中listview的使用步骤_安卓listview控件的用法

    安卓中listview的使用步骤_安卓listview控件的用法1)排序ListView通过适配器得到内容数据,可以对数据list先排序再提供给ListView:privateList>getData(){List>list=newArrayList>();//addData…//对list进行排序if(!list.isEmpty()){Collections.sort(list,newComparator&g…

  • matlab初学者入门_什么一闻就能睡2小时

    matlab初学者入门_什么一闻就能睡2小时目录零基础入门matlab前言1.界面认识2.变量命名3.数据类型4.元胞数组和结构体5.矩阵操作6.程序结构7.基本绘图操作7.1.二维平面绘图7.2.三维立体绘图8.图形的保存与导出9.补充零基础入门matlab前言这篇文章很适合MATLAB的入门学习,这也是我在入门时学习的笔记。虽然说是”零基础“入门matlab,但是如果有其它编程语言基础的话,学起来自然会更轻松。特别鸣谢:B站UP主——爱研究的小阿楠1.界面认识2.变量命名注:Matlab中的注释%%独占一行的注释(有上下横线

  • c语言里void什么作用,C语言中void是什么意思?

    c语言里void什么作用,C语言中void是什么意思?C语言中void是什么意思?C语言中“void”表示为无类型,相应的“void*”为无类型指针,常用在程序编写中对定义函数的参数类型、返回值、函数中指针类型进行声明,其作用是对函数返回和参数的进行限定。C语言关键字auto:声明自动变量break:跳出当前循环case:开关语句分支char:声明字符型变量或函数返回值类型const:声明只读变量continue:结束当前循环,开始下一轮循环…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号