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

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

?? hidsdi.h

?? 讀取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一区二区三区免费野_久草精品视频
欧美精品乱人伦久久久久久| 亚洲精品欧美激情| 国产精品欧美久久久久一区二区| 亚洲欧美色综合| 国产精品12区| 在线综合+亚洲+欧美中文字幕| 国产精品另类一区| 久久99久久99| 欧美夫妻性生活| 亚洲欧美欧美一区二区三区| 国产伦精品一区二区三区在线观看| 精品视频在线免费看| 中文字幕在线不卡一区二区三区| 狠狠色丁香九九婷婷综合五月| 欧美日韩aaa| 亚洲精品自拍动漫在线| 东方aⅴ免费观看久久av| 日韩欧美一区二区在线视频| 性久久久久久久久久久久| 91玉足脚交白嫩脚丫在线播放| 久久精品夜色噜噜亚洲aⅴ| 亚洲r级在线视频| 91福利社在线观看| 国产精品久久久久9999吃药| 国产精品资源在线观看| 欧美刺激午夜性久久久久久久| 婷婷中文字幕一区三区| 欧美三区免费完整视频在线观看| 亚洲一区二区不卡免费| 在线观看91精品国产入口| 亚洲人成网站在线| 在线中文字幕不卡| 亚洲一区二区影院| 欧美日韩国产天堂| 丝袜美腿一区二区三区| 91精品麻豆日日躁夜夜躁| 午夜国产不卡在线观看视频| 制服丝袜中文字幕亚洲| 捆绑变态av一区二区三区| 欧美一区二区三区四区久久| 免费美女久久99| 久久综合九色欧美综合狠狠| 国产精品香蕉一区二区三区| 欧美激情一区二区三区四区| 99精品国产99久久久久久白柏| 亚洲天堂精品在线观看| 欧美性做爰猛烈叫床潮| 日韩av在线发布| 2021久久国产精品不只是精品| 国产在线播放一区三区四| 国产喷白浆一区二区三区| 99re成人精品视频| 亚洲国产人成综合网站| 4438x成人网最大色成网站| 韩国成人在线视频| 中文字幕日本不卡| 欧美视频自拍偷拍| 韩国v欧美v亚洲v日本v| 中文一区在线播放| 欧美网站一区二区| 精品一区二区国语对白| 中文字幕永久在线不卡| 欧美男男青年gay1069videost| 久久精品国产在热久久| 中文子幕无线码一区tr| 欧美高清精品3d| 国产综合色在线视频区| 亚洲激情图片qvod| 精品久久久久久久一区二区蜜臀| 成人精品一区二区三区四区| 亚洲成av人片在线| 中文字幕国产精品一区二区| 欧美日韩国产首页在线观看| 国产成人超碰人人澡人人澡| 午夜精品福利一区二区蜜股av| 国产欧美一区二区精品秋霞影院| 91麻豆精品在线观看| 精品一区二区免费看| 亚洲五码中文字幕| 国产夜色精品一区二区av| 欧美日韩一区中文字幕| 国产99精品国产| 美女视频第一区二区三区免费观看网站| 国产精品久久久久久久浪潮网站| 制服丝袜一区二区三区| 色偷偷88欧美精品久久久| 国产真实乱子伦精品视频| 亚洲高清在线视频| 国产精品看片你懂得| 精品美女一区二区| 欧美日本在线看| 在线免费av一区| 懂色av一区二区夜夜嗨| 激情综合色丁香一区二区| 亚洲国产日韩一级| 亚洲乱码国产乱码精品精98午夜| 久久久不卡网国产精品一区| 在线播放中文字幕一区| 欧美性极品少妇| 色综合久久久久综合体桃花网| 国内不卡的二区三区中文字幕| 亚洲大片在线观看| 亚洲国产cao| 亚洲综合免费观看高清完整版 | 国产在线精品免费| 视频一区二区三区中文字幕| 亚洲欧洲综合另类| 亚洲三级电影网站| 日韩美女久久久| 成人免费一区二区三区视频| 亚洲国产精品激情在线观看| 国产欧美日韩在线视频| 久久九九久久九九| 精品久久久久一区二区国产| 日韩欧美不卡在线观看视频| 欧美电视剧在线看免费| 精品久久久久香蕉网| 337p日本欧洲亚洲大胆色噜噜| 精品久久人人做人人爰| 欧美精品一区二区三区蜜桃视频| 日韩欧美专区在线| 国产亚洲精品7777| 国产精品欧美久久久久无广告 | 日韩一级片网址| 制服丝袜亚洲播放| 日韩免费一区二区| 国产日韩在线不卡| 中文字幕一区二区日韩精品绯色| 中文字幕在线不卡一区二区三区| 亚洲天天做日日做天天谢日日欢| 尤物av一区二区| 日韩精品视频网站| 国产一区二区三区免费| 成人自拍视频在线观看| 91在线小视频| 欧美日韩一区在线观看| 欧美一区二区性放荡片| 久久影院视频免费| 国产精品久久久久影院老司| 一区二区欧美国产| 日韩成人精品在线观看| 国产一区二区三区久久久| 播五月开心婷婷综合| 欧美亚洲一区二区在线| 日韩无一区二区| 久久久777精品电影网影网| 日韩伦理电影网| 天天av天天翘天天综合网色鬼国产 | 99久久久久免费精品国产| 91久久精品午夜一区二区| 欧美一区二区三区系列电影| 日本一区二区在线不卡| 午夜电影久久久| 丁香一区二区三区| 777a∨成人精品桃花网| 日本一区二区不卡视频| 亚洲丶国产丶欧美一区二区三区| 激情五月播播久久久精品| 99热国产精品| 日韩视频在线你懂得| 亚洲精选视频免费看| 国产美女主播视频一区| 欧美视频一区二区三区在线观看 | 国产精品久久久久久久裸模| 日本不卡的三区四区五区| 99久久精品情趣| 久久综合九色综合欧美亚洲| 午夜国产精品一区| av午夜一区麻豆| 久久尤物电影视频在线观看| 天天色综合成人网| 色综合久久久久网| 亚洲国产高清不卡| 精品在线你懂的| 欧美区一区二区三区| 亚洲色图都市小说| 成人精品一区二区三区四区| 日韩女优av电影在线观看| 亚洲二区在线视频| 97精品国产97久久久久久久久久久久| 欧美成人video| 天天影视色香欲综合网老头| 色www精品视频在线观看| 国产三级欧美三级| 国精产品一区一区三区mba桃花| 欧美精品精品一区| 亚洲小说春色综合另类电影| 成人av在线资源网| 欧美国产欧美综合| 国产乱色国产精品免费视频| 日韩一级二级三级精品视频| 亚洲h精品动漫在线观看| 欧美性猛交xxxxxx富婆| 亚洲综合网站在线观看| 在线观看视频一区二区欧美日韩| **性色生活片久久毛片| 成人爱爱电影网址| 综合久久综合久久| 99久久免费精品| 一区二区三区精品在线观看|