UMDF Driver Question.

  • Thread starter Thread starter SkySmile123
  • Start date Start date
S

SkySmile123

Guest
Hi All:

I need your help with few questions.

1. The virtual key sends the key code value (usagepage and usageID) to the driver. How does the driver send the key code value to the system?
2. Does the value received by the driver need to be processed?

For example: the system calculator key code value UsagePage:0x0c, UsageID:0192,through the SetFeature method, how does the driver send the key code value to the system and launch the calculator?


My report descriptor is


0x06,0x00,0x0C, // USAGE_PAGE (Vender Defined Usage Page)
0x0A,0x92,0x01, // USAGE (Vendor Usage 0x01)
0xA1,0x01, // COLLECTION (Application)
0x85,CONTROL_FEATURE_REPORT_ID, // REPORT_ID (1)
0x09,0x01, // USAGE (Vendor Usage 0x01) //
0x15,0x00, // LOGICAL_MINIMUM(0)
0x26,0xff, 0x00, // LOGICAL_MAXIMUM(255)
0x75,0x08, // REPORT_SIZE (0x08)
0x96,(FEATURE_REPORT_SIZE_CB & 0xff), (FEATURE_REPORT_SIZE_CB >> 8), // REPORT_COUNT
0xB1,0x00, // FEATURE (Data,Ary,Abs)
0x09,0x01, // USAGE (Vendor Usage 0x01)
0x75,0x08, // REPORT_SIZE (0x08)
0x96,(INPUT_REPORT_SIZE_CB & 0xff), (INPUT_REPORT_SIZE_CB >> 8), // REPORT_COUNT
0x81,0x00, // INPUT (Data,Ary,Abs)
0x09,0x01, // USAGE (Vendor Usage 0x01)
0x75,0x08, // REPORT_SIZE (0x08)
0x96,(OUTPUT_REPORT_SIZE_CB & 0xff), (OUTPUT_REPORT_SIZE_CB >> 8), // REPORT_COUNT
0x91,0x00, // OUTPUT (Data,Ary,Abs)
0xC0, // END_COLLECTION

Continue reading...
 
Back
Top