阅读:4367回复:9
去下DDK、SDK啦
教育网的。
ftp.seu.edu.cn /Pub/Develope/SDK_DDK_DRV/ 08.07.04.MICROSOFT.WINDOWS.2003.SP1.DRIVER.DEVELOPMENT.KIT-BRiCK Compuware_DriverStudio_v3.1-FCN Microsoft.Platform.SDK 04.09.03-Windows.Server.2003.Platform.SDK.Feb.2003.Edition-QUANTUM Microsoft.Windows.XP.SP1.Driver.Development.Kit.WinXP-TBE Win2k_WinMe_DDK_March2001 Win98DDK ..... .... .... |
|
最新喜欢:gezcge... |
沙发#
发布于:2005-07-27 17:39
非常感谢楼主,正是我需要的资料。
|
|
板凳#
发布于:2007-08-02 10:32
可以下载,谢谢楼主,只是速度很慢啊
|
|
地板#
发布于:2007-08-03 11:19
还是去微软直接下载吧,免费的还不直接去官网?
|
|
|
地下室#
发布于:2007-08-05 14:55
http://www.tomore.com/3/955.html
正在下,速度还可以,大家一起分享。 |
|
|
5楼#
发布于:2007-08-06 15:01
上面提供的这个没有sample,所以在编译那个VdwLibs时,会出现hidport.h的问题,当然了,如果tools--options--directiors没有设置好的话,也会有这个问题的,因此,大家还要找一下这个文件,driverstudio里面告诉大家要找个替换的,否则就报错。
我把这个文件的内容在这里贴出来,是xp的,这个要注意的,把它包含在你的include目录里面就好了,当然最好是注明wxp。 hidport.h /*++ Copyright (c) 1996 Microsoft Corporation Module Name: hidmini.h Abstract Definitions that are common to all HID minidrivers. Authors: Forrest Foltz Ervin Peretz Environment: Kernel mode only Revision History: --*/ #ifndef __HIDPORT_H__ #define __HIDPORT_H__ #include <hidclass.h> // // HID_MINIDRIVER_REGISTRATION is a packet of information describing the // HID minidriver to the class driver. It must be filled in by the minidriver // and passed to the class driver via HidRegisterMinidriver() from the // minidriver's DriverEntry() routine. // typedef struct _HID_MINIDRIVER_REGISTRATION { // // Revision must be set to HID_REVISION by the minidriver // ULONG Revision; // // DriverObject is a pointer to the minidriver's DriverObject that it // received as a DriverEntry() parameter. // PDRIVER_OBJECT DriverObject; // // RegistryPath is a pointer to the minidriver's RegistryPath that it // received as a DriverEntry() parameter. // PUNICODE_STRING RegistryPath; // // DeviceExtensionSize is the size of the minidriver's per-device // extension. // ULONG DeviceExtensionSize; // // Either all or none of the devices driven by a given minidriver are polled. // BOOLEAN DevicesArePolled; UCHAR Reserved[3]; } HID_MINIDRIVER_REGISTRATION, *PHID_MINIDRIVER_REGISTRATION; // // HID_DEVICE_EXTENSION is the public part of the device extension of a HID // functional device object. // typedef struct _HID_DEVICE_EXTENSION { // // PhysicalDeviceObject... normally IRPs are not passed to this. // PDEVICE_OBJECT PhysicalDeviceObject; // // NextDeviceObject... IRPs are sent here by the minidriver. Note that // NextDeviceObject and PhysicalDeviceObject are the same unless someone // has inserted a 'filter' device object, in which case they are not the // same. Sending IRPs to NextDeviceObject will hit the filter device // objects on the way down. // PDEVICE_OBJECT NextDeviceObject; // // MiniDeviceExtension is the per-device extension area for use by // the minidriver. It's size is determined by the DeviceExtensionSize // parameter passed in to HidAddDevice(). // // So, given a Functional Device Object, a mininidriver finds this // structure by: // // HidDeviceExtension = (PHID_DEVICE_EXTENSION)(Fdo->DeviceExtension); // // And of course it's per-device extension is found by: // // MiniDeviceExtension = HidDeviceExtension->MiniDeviceExtension; // PVOID MiniDeviceExtension; } HID_DEVICE_EXTENSION, *PHID_DEVICE_EXTENSION; typedef struct _HID_DEVICE_ATTRIBUTES { ULONG Size; // // sizeof (struct _HID_DEVICE_ATTRIBUTES) // // // Vendor ids of this hid device // USHORT VendorID; USHORT ProductID; USHORT VersionNumber; USHORT Reserved[11]; } HID_DEVICE_ATTRIBUTES, * PHID_DEVICE_ATTRIBUTES; #include <pshpack1.h> typedef struct _HID_DESCRIPTOR { UCHAR bLength; UCHAR bDescriptorType; USHORT bcdHID; UCHAR bCountry; UCHAR bNumDescriptors; /* * This is an array of one OR MORE descriptors. */ struct _HID_DESCRIPTOR_DESC_LIST { UCHAR bReportType; USHORT wReportLength; } DescriptorList [1]; } HID_DESCRIPTOR, * PHID_DESCRIPTOR; #include <poppack.h> typedef VOID (*HID_SEND_IDLE_CALLBACK)( PVOID Context ); typedef struct _HID_SUBMIT_IDLE_NOTIFICATION_CALLBACK_INFO { HID_SEND_IDLE_CALLBACK IdleCallback; PVOID IdleContext; } HID_SUBMIT_IDLE_NOTIFICATION_CALLBACK_INFO, *PHID_SUBMIT_IDLE_NOTIFICATION_CALLBACK_INFO; // // Function prototypes for the HID services exported by the hid class driver // follow. // NTSTATUS HidRegisterMinidriver( IN PHID_MINIDRIVER_REGISTRATION MinidriverRegistration ); NTSTATUS HidNotifyPresence( IN PDEVICE_OBJECT DeviceObject, IN BOOLEAN IsPresent ); // // Internal IOCTLs for the class/mini driver interface. // #define IOCTL_HID_GET_DEVICE_DESCRIPTOR HID_CTL_CODE(0) #define IOCTL_HID_GET_REPORT_DESCRIPTOR HID_CTL_CODE(1) #define IOCTL_HID_READ_REPORT HID_CTL_CODE(2) #define IOCTL_HID_WRITE_REPORT HID_CTL_CODE(3) #define IOCTL_HID_GET_STRING HID_CTL_CODE(4) #define IOCTL_HID_ACTIVATE_DEVICE HID_CTL_CODE(7) #define IOCTL_HID_DEACTIVATE_DEVICE HID_CTL_CODE(8) #define IOCTL_HID_GET_DEVICE_ATTRIBUTES HID_CTL_CODE(9) #define IOCTL_HID_SEND_IDLE_NOTIFICATION_REQUEST HID_CTL_CODE(10) /* * Codes for HID-specific descriptor types, from HID USB spec. */ #define HID_HID_DESCRIPTOR_TYPE 0x21 #define HID_REPORT_DESCRIPTOR_TYPE 0x22 #define HID_PHYSICAL_DESCRIPTOR_TYPE 0x23 // for body part associations /* * These are string IDs for use with IOCTL_HID_GET_STRING * They match the string field offsets in Chapter 9 of the USB Spec. */ #define HID_STRING_ID_IMANUFACTURER 14 #define HID_STRING_ID_IPRODUCT 15 #define HID_STRING_ID_ISERIALNUMBER 16 #endif // __HIDPORT_H__ |
|
|
6楼#
发布于:2007-08-06 15:05
微软现在能下的那个是3790.1830,不是2600,我下了之后就是不好使,VdwLibs编译的时候出了很多的问题的,先是wdm,而后就是stl的一个东西不好使。就记着是56个错误,20个警告。真麻烦。搞这么一个环境,就快崩溃了。
|
|
|
7楼#
发布于:2007-08-06 15:19
好了,第一个driverstudio生成的程序编译成功了,不容易呀。
编译环境:Vc6.0 + xpddk + Compuware DriverStudio 3.1(DriverStudio2.7),还要记得找一个xpddk的hidport.h,我一直在找XP_DDK.SIO,找不到呀。不知道这里的那个是个什么神仙版本。找了才知道,大家好会保密呀。有些人秘密全知道,就是不说。刚才看了一个教程。 DriverStudio套件包的安装与运行环境设置 http://www.icwin.net/ShowArtitle.ASP?art_id=5900&cat_id=44 也许人家用的都是配好了的,可是版本之间的搭配很重要这一点,一个字没说。还好,总算是搞齐了,好,牢骚太盛防肠断,不说了,祝大家好运了。 |
|
|
8楼#
发布于:2007-08-12 23:26
感谢!
|
|
9楼#
发布于:2008-08-08 14:02
天冰天降:
微软现在能下的那个是3790.1830,不是2600,我下了之后就是不好使,VdwLibs编译的时候出了很多的问题的,先是wdm,而后就是stl的一个东西不好使。就记着是56个错误,20个警告。真麻烦。搞这么一个环境,就快崩溃了。 ------------------------〉请问后来怎么解决的,我也是同样问题哈 |
|