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

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

?? hidsdi.h

?? VC++寫的移植性很強的USB通信程序
?? 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一区二区三区免费野_久草精品视频
国产aⅴ精品一区二区三区色成熟| 久久亚洲精华国产精华液 | 一本久久a久久精品亚洲| 久久久久国色av免费看影院| 国产精品911| 国产精品久久久久9999吃药| 94色蜜桃网一区二区三区| 自拍偷拍国产精品| 欧美三级韩国三级日本一级| 麻豆精品新av中文字幕| 久久久99免费| 白白色亚洲国产精品| 一区二区三区日韩| 欧美日韩久久久久久| 久久精品国内一区二区三区| 国产欧美一区二区精品仙草咪 | 日韩成人dvd| 日韩精品最新网址| 成人激情黄色小说| 亚洲成人精品一区二区| 日韩精品中文字幕一区二区三区| 国产福利一区二区三区视频在线 | 国产一区欧美二区| 18欧美亚洲精品| 91精品黄色片免费大全| 国产一级精品在线| 一区二区三区四区在线免费观看 | 日本丶国产丶欧美色综合| 性做久久久久久| 久久人人97超碰com| 色综合一个色综合| 精品亚洲aⅴ乱码一区二区三区| 国产精品色呦呦| 欧美人与禽zozo性伦| 国产成人精品aa毛片| 亚洲超碰97人人做人人爱| 久久精品亚洲乱码伦伦中文| 91九色02白丝porn| 国产精品一区二区免费不卡 | 国产精品久久久久影院| 欧美理论片在线| 成人免费视频app| 天堂成人国产精品一区| 国产精品热久久久久夜色精品三区| 欧美日韩成人激情| a级精品国产片在线观看| 久久精品72免费观看| 亚洲精品乱码久久久久| 久久精品一区二区三区不卡| 69堂成人精品免费视频| 99久久99久久精品国产片果冻| 天天做天天摸天天爽国产一区| 中文字幕中文乱码欧美一区二区| 欧美一级高清片在线观看| 91尤物视频在线观看| 国产麻豆成人精品| 日本不卡高清视频| 一区二区三区不卡视频| 国产精品美女久久福利网站 | 久久久国产综合精品女国产盗摄| 欧美日韩精品一区视频| 97久久精品人人澡人人爽| 国产精品自拍毛片| 激情综合色综合久久| 无码av免费一区二区三区试看| 亚洲欧美日韩一区二区| 国产精品免费aⅴ片在线观看| 久久久久久影视| 2014亚洲片线观看视频免费| 欧美一级欧美三级在线观看| 欧美日韩一二三区| 在线观看中文字幕不卡| 色综合久久六月婷婷中文字幕| 丁香天五香天堂综合| 国产原创一区二区| 国内精品免费**视频| 经典三级视频一区| 国产乱妇无码大片在线观看| 国产精品一区免费在线观看| 国产成人综合精品三级| 国产伦精品一区二区三区免费| 蜜臀国产一区二区三区在线播放| 日日夜夜一区二区| 日韩制服丝袜av| 奇米一区二区三区| 久久精品国产一区二区| 韩国成人在线视频| 国产成人免费视频一区| 成人a区在线观看| 99精品欧美一区二区三区综合在线| 91丨国产丨九色丨pron| 91久久精品午夜一区二区| 色婷婷综合视频在线观看| 日本韩国一区二区三区视频| 欧美在线你懂得| 5858s免费视频成人| 884aa四虎影成人精品一区| 欧美一级一区二区| 国产欧美视频一区二区| 中文字幕一区二| 亚洲在线观看免费| 日本中文字幕一区二区视频| 国产综合久久久久久久久久久久| 国产成人免费在线| 91九色最新地址| 日韩午夜在线播放| 中国av一区二区三区| 亚洲综合精品自拍| 看国产成人h片视频| 国产成人免费视频精品含羞草妖精| 成人av在线资源网站| 欧美亚州韩日在线看免费版国语版| 91精品国产综合久久香蕉的特点| 久久精品一二三| 亚洲欧美日韩在线播放| 美女一区二区视频| 91麻豆免费看| 欧美v国产在线一区二区三区| 国产欧美日韩在线视频| 亚洲一区二区三区不卡国产欧美 | 国产成人a级片| 91搞黄在线观看| 精品国产凹凸成av人导航| 国产精品福利一区| 日韩av不卡在线观看| 成人国产精品免费| 日韩欧美视频一区| 亚洲免费高清视频在线| 久久精品国产99| 欧美性大战久久久久久久蜜臀 | 久久一日本道色综合| 亚洲人成网站色在线观看| 麻豆精品一区二区| 欧美三级日韩三级国产三级| 欧美国产日韩在线观看| 天天影视色香欲综合网老头| 99久久久国产精品| 欧美一区二区三区四区久久| 亚洲人成小说网站色在线| 韩国毛片一区二区三区| 欧美日本乱大交xxxxx| 中文字幕在线免费不卡| 国产在线精品不卡| 日韩一区二区三区视频在线观看| 综合久久综合久久| 国产高清亚洲一区| 精品久久一二三区| 天堂av在线一区| 欧美性xxxxx极品少妇| 欧美国产亚洲另类动漫| 精品亚洲porn| 日韩视频一区二区三区在线播放| 亚洲欧美国产77777| 成人性生交大片免费| 精品国产乱码久久久久久1区2区| 婷婷六月综合网| 欧美无乱码久久久免费午夜一区| 亚洲欧洲精品成人久久奇米网| 国产美女娇喘av呻吟久久| 欧美一区二区三区在线观看 | 国产欧美视频一区二区| 国产一区二区美女诱惑| 日韩欧美一区二区三区在线| 午夜精品久久久久久久久久| 欧洲视频一区二区| 亚洲欧美激情插 | 欧美日韩一区在线| 亚洲自拍偷拍av| 欧美日韩在线不卡| 亚洲一区二区不卡免费| 91精彩视频在线| 亚洲综合丝袜美腿| 欧洲精品中文字幕| 亚洲激情图片小说视频| 欧美亚洲一区二区三区四区| 亚洲国产综合在线| 欧美日韩高清在线播放| 亚洲大片一区二区三区| 欧美美女喷水视频| 婷婷成人综合网| 欧美一区二区福利在线| 久久国产成人午夜av影院| 精品国产一区二区三区忘忧草| 精品写真视频在线观看| 久久久久久**毛片大全| 国产成人啪午夜精品网站男同| 中文字幕在线观看一区| 日本韩国欧美三级| 偷窥少妇高潮呻吟av久久免费| 欧美一区二区三区精品| 精品一区免费av| 亚洲国产精品二十页| 91免费国产在线观看| 亚洲成a人片在线观看中文| 在线91免费看| 韩国女主播成人在线| 国产精品福利电影一区二区三区四区| 91在线观看视频| 日韩精品电影在线| 久久精品网站免费观看|