亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? hidsdi.h

?? hid類usb對外設的驅動application
?? H
字號:
/*++

Copyright (c) Microsoft Corporation. All rights reserved.

Module Name:

    HIDSDI.H

Abstract:

    This module contains the PUBLIC definitions for the
    code that implements the HID dll.

Environment:

    Kernel & user mode

--*/


#ifndef _HIDSDI_H
#define _HIDSDI_H

#include <pshpack4.h>

//#include "wtypes.h"

//#include <windef.h>
//#include <win32.h>
//#include <basetyps.h>

typedef LONG NTSTATUS;
#include "hidusage.h"
#include "hidpi.h"

typedef struct _HIDD_CONFIGURATION {
    PVOID    cookie;
    ULONG    size;
    ULONG    RingBufferSize;
} HIDD_CONFIGURATION, *PHIDD_CONFIGURATION;

typedef struct _HIDD_ATTRIBUTES {
    ULONG   Size; // = sizeof (struct _HIDD_ATTRIBUTES)

    //
    // Vendor ids of this hid device
    //
    USHORT  VendorID;
    USHORT  ProductID;
    USHORT  VersionNumber;

    //
    // Additional fields will be added to the end of this structure.
    //
} HIDD_ATTRIBUTES, *PHIDD_ATTRIBUTES;


BOOLEAN __stdcall
HidD_GetAttributes (
    IN  HANDLE              HidDeviceObject,
    OUT PHIDD_ATTRIBUTES    Attributes
    );
/*++
Routine Description:
    Fill in the given HIDD_ATTRIBUTES structure with the attributes of the
    given hid device.

--*/


void __stdcall
HidD_GetHidGuid (
   OUT   LPGUID   HidGuid
   );

BOOLEAN __stdcall
HidD_GetPreparsedData (
   IN    HANDLE                  HidDeviceObject,
   OUT   PHIDP_PREPARSED_DATA  * PreparsedData
   );
/*++
Routine Description:
    Given a handle to a valid Hid Class Device Object, retrieve the preparsed
    data for the device.  This routine will allocate the appropriately 
    sized buffer to hold this preparsed data.  It is up to client to call
    HidP_FreePreparsedData to free the memory allocated to this structure when
    it is no longer needed.

Arguments:
   HidDeviceObject A handle to a Hid Device that the client obtains using 
                   a call to CreateFile on a valid Hid device string name.
                   The string name can be obtained using standard PnP calls.

   PreparsedData   An opaque data structure used by other functions in this 
                   library to retrieve information about a given device.

Return Value:
   TRUE if successful.
   FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_FreePreparsedData (
   IN    PHIDP_PREPARSED_DATA PreparsedData
   );

BOOLEAN __stdcall
HidD_FlushQueue (
   IN    HANDLE                HidDeviceObject
   );
/*++
Routine Description:
    Flush the input queue for the given HID device.

Arguments:
   HidDeviceObject A handle to a Hid Device that the client obtains using 
                   a call to CreateFile on a valid Hid device string name.
                   The string name can be obtained using standard PnP calls.

Return Value:
   TRUE if successful
   FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetConfiguration (
   IN   HANDLE               HidDeviceObject,
   OUT  PHIDD_CONFIGURATION  Configuration,
   IN   ULONG                ConfigurationLength
   );
/*++
Routine Description:
    Get the configuration information for this Hid device

Arguments:
   HidDeviceObject      A handle to a Hid Device Object.

   Configuration        A configuration structure.  HidD_GetConfiguration MUST
                        be called before the configuration can be modified and
                        set using HidD_SetConfiguration

   ConfigurationLength  That is ``sizeof (HIDD_CONFIGURATION)''. Using this
                        parameter, we can later increase the length of the 
                        configuration array and not break older apps.

Return Value:
   TRUE if successful
   FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_SetConfiguration (
   IN   HANDLE               HidDeviceObject,
   IN   PHIDD_CONFIGURATION  Configuration,
   IN   ULONG                ConfigurationLength
   );
/*++
Routine Description:
   Set the configuration information for this Hid device...
   
   NOTE: HidD_GetConfiguration must be called to retrieve the current 
         configuration information before this information can be modified 
         and set.

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    Configuration        A configuration structure.  HidD_GetConfiguration MUST
                         be called before the configuration can be modified and
                         set using HidD_SetConfiguration
 
    ConfigurationLength  That is ``sizeof (HIDD_CONFIGURATION)''. Using this
                         parameter, we can later increase the length of the 
                         configuration array and not break older apps.

Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetFeature (
   IN    HANDLE   HidDeviceObject,
   OUT   PVOID    ReportBuffer,
   IN    ULONG    ReportBufferLength
   );
/*++
Routine Description:
    Retrieve a feature report from a HID device.

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    ReportBuffer         The buffer that the feature report should be placed 
                         into.  The first byte of the buffer should be set to
                         the report ID of the desired report
 
    ReportBufferLength   The size (in bytes) of ReportBuffer.  This value 
                         should be greater than or equal to the 
                         FeatureReportByteLength field as specified in the 
                         HIDP_CAPS structure for the device
Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_SetFeature (
   IN    HANDLE   HidDeviceObject,
   IN    PVOID    ReportBuffer,
   IN    ULONG    ReportBufferLength
   );
/*++
Routine Description:
    Send a feature report to a HID device.

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    ReportBuffer         The buffer of the feature report to send to the device
 
    ReportBufferLength   The size (in bytes) of ReportBuffer.  This value 
                         should be greater than or equal to the 
                         FeatureReportByteLength field as specified in the 
                         HIDP_CAPS structure for the device
Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetInputReport (
   IN    HANDLE   HidDeviceObject,
   OUT   PVOID    ReportBuffer,
   IN    ULONG    ReportBufferLength
   );
/*++
Routine Description:
    Retrieve an input report from a HID device.

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    ReportBuffer         The buffer that the input report should be placed 
                         into.  The first byte of the buffer should be set to
                         the report ID of the desired report
 
    ReportBufferLength   The size (in bytes) of ReportBuffer.  This value 
                         should be greater than or equal to the 
                         InputReportByteLength field as specified in the 
                         HIDP_CAPS structure for the device
Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_SetOutputReport (
   IN    HANDLE   HidDeviceObject,
   IN    PVOID    ReportBuffer,
   IN    ULONG    ReportBufferLength
   );
/*++
Routine Description:
    Send an output report to a HID device.

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    ReportBuffer         The buffer of the output report to send to the device
 
    ReportBufferLength   The size (in bytes) of ReportBuffer.  This value 
                         should be greater than or equal to the 
                         OutputReportByteLength field as specified in the 
                         HIDP_CAPS structure for the device
Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetNumInputBuffers (
    IN  HANDLE  HidDeviceObject,
    OUT PULONG  NumberBuffers
    );
/*++
Routine Description:
    This function returns the number of input buffers used by the specified
    file handle to the Hid device.  Each file object has a number of buffers
    associated with it to queue reports read from the device but which have
    not yet been read by the user-mode app with a handle to that device.

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    NumberBuffers        Number of buffers currently being used for this file
                         handle to the Hid device

Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_SetNumInputBuffers (
    IN  HANDLE HidDeviceObject,
    OUT ULONG  NumberBuffers
    );
/*++

Routine Description:
    This function sets the number of input buffers used by the specified
    file handle to the Hid device.  Each file object has a number of buffers
    associated with it to queue reports read from the device but which have
    not yet been read by the user-mode app with a handle to that device.

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    NumberBuffers        New number of buffers to use for this file handle to
                         the Hid device

Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetPhysicalDescriptor (
   IN    HANDLE   HidDeviceObject,
   OUT   PVOID    Buffer,
   IN    ULONG    BufferLength
   );
/*++
Routine Description:
    This function retrieves the raw physical descriptor for the specified
    Hid device.  

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    Buffer               Buffer which on return will contain the physical
                         descriptor if one exists for the specified device
                         handle

    BufferLength         Length of buffer (in bytes)


Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetManufacturerString (
   IN    HANDLE   HidDeviceObject,
   OUT   PVOID    Buffer,
   IN    ULONG    BufferLength
   );
/*++
Routine Description:
    This function retrieves the manufacturer string from the specified 
    Hid device.  

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    Buffer               Buffer which on return will contain the manufacturer
                         string returned from the device.  This string is a 
                         wide-character string

    BufferLength         Length of Buffer (in bytes)


Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetProductString (
   IN    HANDLE   HidDeviceObject,
   OUT   PVOID    Buffer,
   IN    ULONG    BufferLength
   );
/*++
Routine Description:
    This function retrieves the product string from the specified 
    Hid device.  

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    Buffer               Buffer which on return will contain the product
                         string returned from the device.  This string is a 
                         wide-character string

    BufferLength         Length of Buffer (in bytes)


Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetIndexedString (
   IN    HANDLE   HidDeviceObject,
   IN    ULONG    StringIndex,
   OUT   PVOID    Buffer,
   IN    ULONG    BufferLength
   );
/*++
Routine Description:
    This function retrieves a string from the specified Hid device that is
    specified with a certain string index.

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    StringIndex          Index of the string to retrieve

    Buffer               Buffer which on return will contain the product
                         string returned from the device.  This string is a 
                         wide-character string

    BufferLength         Length of Buffer (in bytes)

Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetSerialNumberString (
   IN    HANDLE   HidDeviceObject,
   OUT   PVOID    Buffer,
   IN    ULONG    BufferLength
   );
/*++
Routine Description:
    This function retrieves the serial number string from the specified 
    Hid device.  

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    Buffer               Buffer which on return will contain the serial number
                         string returned from the device.  This string is a 
                         wide-character string

    BufferLength         Length of Buffer (in bytes)

Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/

BOOLEAN __stdcall
HidD_GetMsGenreDescriptor (
   IN    HANDLE   HidDeviceObject,
   OUT   PVOID    Buffer,
   IN    ULONG    BufferLength
   );
/*++
Routine Description:
    This function retrieves the Microsoft Genre descriptor from the specified 
    Hid device.  

Arguments:
    HidDeviceObject      A handle to a Hid Device Object.
 
    Buffer               Buffer which on return will contain the descriptor
                         returned from the device.
                         
    BufferLength         Length of Buffer (in bytes)

Return Value:
    TRUE if successful
    FALSE otherwise  -- Use GetLastError() to get extended error information
--*/


#include <poppack.h>

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区三区在线观看免费| 青娱乐精品视频| 欧美va天堂va视频va在线| 国产乱子伦一区二区三区国色天香| 综合久久一区二区三区| 日韩午夜电影在线观看| 色视频成人在线观看免| 国产在线看一区| 天天色天天操综合| 亚洲视频在线观看一区| 国产女主播视频一区二区| 日韩亚洲欧美一区二区三区| 欧美色欧美亚洲另类二区| 国产乱妇无码大片在线观看| 日本欧美肥老太交大片| 亚洲一区成人在线| 亚洲激情欧美激情| 亚洲图片欧美激情| 中文字幕在线观看一区二区| 国产婷婷色一区二区三区| 精品蜜桃在线看| 精品免费国产一区二区三区四区| 69堂成人精品免费视频| 欧美日韩在线一区二区| 欧美视频在线播放| 欧美日韩精品一二三区| 欧美羞羞免费网站| 欧美日韩在线播放| 日韩亚洲欧美高清| 欧美大片免费久久精品三p| 欧美一区午夜视频在线观看 | 不卡视频在线看| 白白色 亚洲乱淫| 色噜噜狠狠一区二区三区果冻| 99久久久久免费精品国产| 91在线看国产| 欧美丰满一区二区免费视频| 精品三级在线看| 国产精品乱子久久久久| 亚洲欧美一区二区三区久本道91| 亚洲一区二区三区四区在线| 午夜精品一区二区三区免费视频| 免费高清在线视频一区·| 精品一区二区三区视频在线观看| 国产福利一区二区三区视频在线| 成人av在线一区二区三区| 欧美揉bbbbb揉bbbbb| 久久久综合精品| 天天免费综合色| 成人免费三级在线| 欧美精品v国产精品v日韩精品| 久久久亚洲午夜电影| 一区二区在线观看av| 国产伦精品一区二区三区视频青涩| 97精品久久久久中文字幕| 欧美一区二区三区播放老司机| 国产精品三级电影| 九九精品视频在线看| 色哟哟一区二区| 国产精品久久久久9999吃药| 日韩成人精品在线观看| 欧美日韩一区在线| 国产一区二区中文字幕| 91亚洲国产成人精品一区二区三| 老司机午夜精品99久久| 欧美日韩久久久久久| 美国精品在线观看| 久久网站最新地址| 色婷婷精品大在线视频| 日本最新不卡在线| 中文字幕一区二区不卡 | 18成人在线视频| 国产亚洲欧洲997久久综合 | 日韩一区二区视频| 成人国产精品免费| 捆绑调教美女网站视频一区| 国产精品区一区二区三| 日韩一区二区三区免费看 | 国产一区二区看久久| 伊人夜夜躁av伊人久久| 久久精品水蜜桃av综合天堂| 欧美无人高清视频在线观看| 国产成人精品免费在线| 五月婷婷激情综合| 亚洲精品网站在线观看| 久久在线观看免费| 欧美乱妇23p| 欧美优质美女网站| 成人h精品动漫一区二区三区| 另类小说欧美激情| 水野朝阳av一区二区三区| 一区二区三区高清在线| 国产精品理伦片| 久久久久久久久久久久电影| 91精品一区二区三区久久久久久| 不卡免费追剧大全电视剧网站| 国产在线一区观看| 国产乱国产乱300精品| 国内欧美视频一区二区| 韩国一区二区在线观看| 蜜臀久久久久久久| 美脚の诱脚舐め脚责91 | 亚洲激情自拍偷拍| 亚洲精品乱码久久久久久黑人| 综合av第一页| 亚洲人成在线播放网站岛国| 国产精品久久久久久福利一牛影视| 久久久www成人免费毛片麻豆| 久久亚洲二区三区| 国产亚洲精品福利| 肉色丝袜一区二区| 午夜视频一区在线观看| 午夜精品福利一区二区蜜股av | 91丝袜美女网| 欧美影院一区二区三区| 日韩写真欧美这视频| 久久久精品2019中文字幕之3| 欧美—级在线免费片| 亚洲综合一区二区精品导航| 天涯成人国产亚洲精品一区av| 久久se精品一区二区| 成人免费毛片app| 91麻豆精品久久久久蜜臀| 久久麻豆一区二区| 夜色激情一区二区| 国产精品自拍一区| 日本精品裸体写真集在线观看 | 亚洲自拍偷拍麻豆| 国产一区不卡在线| 欧美日韩国产美女| 中文av一区特黄| 天堂影院一区二区| 91丨porny丨首页| 欧美成人乱码一区二区三区| 亚洲欧美日韩人成在线播放| 日韩成人一区二区三区在线观看| 99视频在线精品| 欧美成人激情免费网| 一区二区欧美视频| caoporm超碰国产精品| 欧美成人video| 日韩精彩视频在线观看| 在线观看国产日韩| 亚洲女性喷水在线观看一区| 国产精品123| 久久久亚洲综合| 经典三级视频一区| 日韩一区二区麻豆国产| 91视频国产观看| 亚洲精品一区二区三区香蕉| 亚洲国产欧美日韩另类综合| 91视频免费播放| 尤物在线观看一区| 欧美在线免费播放| 午夜精品久久久久久久久| 欧美中文字幕一区二区三区亚洲| 国产精品不卡在线| 99久久精品免费看国产免费软件| 欧美国产日产图区| 国产白丝精品91爽爽久久 | 94色蜜桃网一区二区三区| 国产精品免费久久久久| 91日韩精品一区| 亚洲一区二区av电影| 91精品国产色综合久久ai换脸| 日av在线不卡| 久久精品水蜜桃av综合天堂| 懂色av中文字幕一区二区三区| 久久精品亚洲一区二区三区浴池| 国产成人精品www牛牛影视| 国产精品国产三级国产普通话蜜臀 | 午夜伦理一区二区| 久久只精品国产| 91视频在线看| 美女视频免费一区| 日本一区二区免费在线观看视频 | 九色综合国产一区二区三区| 久久精品视频在线免费观看 | 偷拍亚洲欧洲综合| 久久亚洲欧美国产精品乐播| 色天天综合色天天久久| 麻豆国产一区二区| 亚洲精品成a人| 久久老女人爱爱| 欧美女孩性生活视频| 国产成人综合精品三级| 亚洲综合一区二区精品导航| 精品国产三级a在线观看| 色妞www精品视频| 国产一区二区在线影院| 亚洲一区二区av在线| 久久九九全国免费| 91精品婷婷国产综合久久竹菊| 波多野结衣中文字幕一区二区三区| 日本欧美一区二区| 一区二区欧美国产| 一区二区三区在线观看动漫| 久久久久久久久久久电影| 日韩一区二区三区视频| 8x福利精品第一导航|