利用DriverStudio3.2研发USB驱动程序利用DriverStudio3.2研发USB驱动程序利用DriverStudio研发驱动程序比必要调用DDK研发一起要方便快捷的多。就像利用MFC研发一般的桌面程序一样,而非自由选择SDK展开程序的撰写。换句话说,DriverStudio和DDK的关系就像MFC和SDK的关系一样,DriverStudio只是对DDK中的各种结构、函数展开了PCB,便利开发人员展开底层函数的调用,如DriverStudio的Kirp类就是对DDK中IRP所有操作者的PCB而已。1/20下面非常简单讲解一下利用DriverStudio3.2研发一个USB驱动程序的步骤。这个USB设备有3个双向端点,每个端点配备如下:EP类型地址buffer(Bytes)0IN/OUTControl0x80/0x0016/161IN/OUTBulk0x81/0x0164/642IN/OUTBulk0x82/0x0264/642/20驱动程序必须构建功能就是掌控设备上LED灯亮和灭亡,以及通过Endpoint2对设备展开读取。由于DriveStudio由几个部分构成,我们写出这个驱动程序只要中用DriverWork。在这里,我们假设读者早已准确加装了DriverWorks,并且早已编译器了各个库文件(闻本博客前面讲解内容)。3/201、启动VC,从VCIDE菜单DriverStudio中自由选择DriverWizard,如图1右图对话框中,写出上项目名称。在这里,我们将这个项目称作:TEST,所在目录为D:TEST。然后点按钮Next;4/202、在接下来这个对话框中(如图2),我们必须自由选择驱动程序类型。由于USB设备驱动程序是WDM类型,所以我们在的一个单选按钮中自由选择“WDMDriver”;第二个单选按钮是指所撰写的驱动程序否必须C++框架的反对,如自由选择该项,所分解的驱动程序类被PCB成驱动类和设备类两大类,否则驱动程序类以DDK形式经常出现,一般来说自由选择反对C++框架。点按钮Next。5/203、在接下来这个对话框中(如图3),我们必须自由选择驱动程序类型。由于USB设备驱动程序是WDM类型,所以我们自由选择第二项并且点按钮Next。6/204、在第4个对话框中(如图4),自由选择我们驱动程序所操作者总线类型。这里,我们自由选择USB。在USBVendorID和USBProductID中放入USB设备VID和PID。假设我们USB设备VID和PID分别是16十进制0471和1801。然后点按钮Next。7/205、在接下来对话框中(如5),我们必须重新加入Endpoint1和Endpoint2定义。