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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? hidsdi.h

?? 這是一個(gè)USB編程例子
?? H
字號(hào):
/*++

Copyright (c) 1996    Microsoft Corporation

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_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
--*/


#include <poppack.h>

#endif

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆成人av在线| 成人污视频在线观看| 国内精品免费**视频| 99在线视频精品| 欧美va亚洲va香蕉在线| 亚洲精品视频在线看| 国内外成人在线| 欧美性高清videossexo| 国产精品国产a| 国产一区二区精品久久91| 欧洲亚洲国产日韩| 亚洲婷婷综合久久一本伊一区| 蜜桃视频在线观看一区| 欧美三电影在线| 中文字幕在线视频一区| 国产一区亚洲一区| 欧美成人精品福利| 日韩avvvv在线播放| 欧美在线你懂的| 亚洲三级在线观看| 成人动漫av在线| 久久精品视频在线看| 青青草91视频| 欧美另类z0zxhd电影| 一区二区三区在线观看动漫| 成人激情免费视频| 国产精品传媒入口麻豆| 国产91高潮流白浆在线麻豆 | 成人精品视频一区二区三区尤物| 欧美日本在线一区| 亚洲图片一区二区| 欧美亚洲尤物久久| 亚洲一区二区视频| 欧美在线一二三| 亚洲一区二区三区视频在线 | 精品一区二区三区不卡| 欧美一区二区三区男人的天堂| 亚洲国产一区在线观看| 在线观看一区二区视频| 一区二区三区四区国产精品| 色婷婷久久久久swag精品| 亚洲欧洲三级电影| 91高清在线观看| 亚洲成人一区在线| 日韩欧美国产一区在线观看| 99视频热这里只有精品免费| 国产清纯在线一区二区www| 国产电影一区在线| 一区在线观看免费| 在线区一区二视频| 日韩精品每日更新| 久久综合色之久久综合| 国产成人在线视频网站| 中文字幕日本乱码精品影院| 91精品福利视频| 午夜精品免费在线观看| 欧美一级精品大片| 国产高清久久久久| 亚洲精选在线视频| 日韩精品资源二区在线| 粉嫩av一区二区三区在线播放| 亚洲欧美日韩小说| 欧美一激情一区二区三区| 高清beeg欧美| 亚洲高清在线精品| 欧美精品一区二区久久久| 成人av电影免费观看| 香蕉成人啪国产精品视频综合网| 日韩一区和二区| 成人毛片在线观看| 秋霞电影网一区二区| 日本一区二区三区电影| 欧美少妇xxx| 国产高清不卡二三区| 一区二区久久久久| 久久久高清一区二区三区| 色系网站成人免费| 国内精品伊人久久久久av一坑| 亚洲男同性视频| 久久亚洲影视婷婷| 欧美日本不卡视频| 成人听书哪个软件好| 日韩精品一级中文字幕精品视频免费观看 | 欧美日韩精品一区二区三区四区| 狠狠色丁香久久婷婷综合丁香| 亚洲天堂av一区| 精品对白一区国产伦| 欧美三片在线视频观看| 高清成人免费视频| 国精产品一区一区三区mba视频| 亚洲一区二区偷拍精品| **欧美大码日韩| 久久久99免费| 欧美一区二区三区在线看| 色噜噜狠狠成人中文综合| 国产东北露脸精品视频| 蜜桃av一区二区在线观看| 亚洲综合图片区| 欧美激情一区在线| 精品999在线播放| 5566中文字幕一区二区电影 | 欧美久久久久免费| 在线一区二区视频| 不卡av电影在线播放| 国产一区二三区好的| 蜜桃久久av一区| 午夜在线成人av| 亚洲一二三四在线| 一区二区三区国产精品| 亚洲伦理在线免费看| 中文字幕亚洲一区二区av在线| 久久精品欧美一区二区三区麻豆| 日韩欧美www| 日韩精品一区二区三区四区| 91麻豆精品国产91久久久资源速度 | 欧美电影在哪看比较好| 欧美视频在线播放| 欧美剧情电影在线观看完整版免费励志电影 | 欧美综合在线视频| 亚洲啪啪综合av一区二区三区| 日本韩国欧美一区| 日本二三区不卡| 婷婷综合另类小说色区| 精品国产免费久久| 欧美zozo另类异族| 亚洲国产人成综合网站| 国产精品久久久久一区二区三区 | 欧美日韩另类一区| 欧美久久免费观看| 精品国产髙清在线看国产毛片| 精品国产凹凸成av人导航| 欧美成人精品福利| 国产精品色在线| 亚洲三级在线看| 午夜精品一区二区三区免费视频| 午夜一区二区三区视频| 美日韩一级片在线观看| 国内久久精品视频| 99精品欧美一区| 欧美精品日韩精品| 精品国产欧美一区二区| 国产精品久久夜| 亚洲网友自拍偷拍| 精品一区二区在线观看| 成人精品小蝌蚪| 欧美系列日韩一区| 亚洲精品在线观看视频| 国产精品美女久久久久久久| 亚洲精品第1页| 麻豆视频一区二区| caoporm超碰国产精品| 欧美日韩国产成人在线91| 久久久蜜臀国产一区二区| 一区二区三区波多野结衣在线观看 | 久久一留热品黄| 国产欧美日韩麻豆91| 亚洲大片在线观看| 国产伦精一区二区三区| 色屁屁一区二区| 精品国产sm最大网站免费看| 一区二区三区在线视频观看| 美国精品在线观看| 99国产精品一区| 久久综合九色综合欧美就去吻| 亚洲欧美日韩系列| 国产精品影视在线观看| 欧美三级乱人伦电影| 国产欧美在线观看一区| 婷婷久久综合九色综合伊人色| 成人av片在线观看| 精品国产乱码91久久久久久网站| 亚洲乱码精品一二三四区日韩在线| 美女精品一区二区| 91国内精品野花午夜精品 | 欧美一区二区三区在线电影| 国产精品久久久久久一区二区三区| 免费在线观看视频一区| 色婷婷综合在线| 国产女同互慰高潮91漫画| 日韩精品亚洲一区二区三区免费| 91理论电影在线观看| 国产亚洲欧洲997久久综合| 免费观看91视频大全| 欧美日韩高清不卡| 亚洲男人都懂的| 成人av在线播放网站| 久久久久99精品一区| 国产综合色在线| 91精品欧美福利在线观看| 亚洲一区在线免费观看| 色综合天天天天做夜夜夜夜做| 国产日产欧美一区| 国产美女娇喘av呻吟久久| 欧美成人一区二区| 日本麻豆一区二区三区视频| 69久久夜色精品国产69蝌蚪网| 亚洲一区视频在线观看视频| 色婷婷av一区二区三区软件| 中文字幕中文字幕一区| 成人h精品动漫一区二区三区|