SetupDiGetDeviceInterfaceDetail

2023-11-04

SetupDiGetDeviceInterfaceDetail

该函数返回设备接口的详细信息。

BOOL SetupDiGetDeviceInterfaceDetail(
  _In_       HDEVINFO                         DeviceInfoSet,
  _In_       PSP_DEVICE_INTERFACE_DATA        DeviceInterfaceData,
  _Out_opt_  PSP_DEVICE_INTERFACE_DETAIL_DATA DeviceInterfaceDetailData,
  _In_       DWORD                            DeviceInterfaceDetailDataSize,
  _Out_opt_  PDWORD                           RequiredSize,
  _Out_opt_  PSP_DEVINFO_DATA                 DeviceInfoData
);

参数

  • DeviceInfoSet
      指向设备信息集的指针,它包含了所要接收信息的接口。该句柄通常由SetupDiGetClassDevs函数返回。
  • DeviceInterfaceData
      一个指向 SP_DEVICE_INTERFACE_DATA结构的指针,该结构指定了 DeviceInfoSet 参数中设备的接口。这个类型的指针通常由 SetupDiEnumDeviceInterfaces 函数返回。
  • DeviceInterfaceDetailData
      一个指向SP_DEVICE_INTERFACE_DETAIL_DATA结构的指针,该结构用于接收指定接口的信息。该参数是可选的且可以为NULL。如果DeviceInterfaceDetailSize 参数为0,该参数必须为NULL。如果该参数被指定,主调者必须在调用该函数之前,设置 SP_DEVICE_INTERFACE_DETAIL_DATA 结构的 cbSize 成员为 sizeof(SP_DEVICE_INTERFAC_DETAIL_DATA)。cbSize 成员总是包含数据结构的固定部分的长度。
  • DeviceInterfaceDetailDataSize
     DeviceInterfaceDetailData 参数指定的缓冲的大小。该缓冲的大小不能小于 (offsetof(SP_DEVICE_INTERFACE_DETAIL_DATA, DevicePath) + sizeof(TCHAR)) 字节。
    如果 DeviceInterfaceDetailData 参数为NULL,该参数必须为0.
  • RequiredSize
      一个指向变量的指针,该变量接收请求的 DeviceInterfaceDetailData 缓冲的大小。这个大小包含了结构的固定部分的大小再加上设备路径字符串的长度。该参数是可选的,也可以是NULL。
  • DeviceInfoData
      一个指向缓冲的指针,该缓冲接收关于支持请求的接口的设备的信息。主调者必须设置 DeviceInfoData.cbSize 成员为 sizeof(SP_DEVINFO_DATA)。该参数是可选的,也可以为NULL。

返回值

如果函数顺利完成,则返回TRUE,如果有错误,则返回FALSE。

备注

使用该函数来获得接口的细节,通常需要两个步骤:
1、获得请求的缓冲大小。
  调用SetupDiGetDeviceInterfaceDetail,并指定参数DeviceInterfaceDetailData = NULL,DeviceInterfaceDetailDataSize = 0, 以及一个有效的 RequiredSize 变量。调用之后函数会返回失败,并且在 RequiredSize中返回所需的缓冲区大小,通过调用GetLastError可以获取到ERROR_INSUFFICIENT_BUFFER。

2、分配一个合适的缓冲并再次调用函数来获得接口细节。
  由该函数返回的接口细节包括设备路径。不要试图解析设备路径符号名字。设备路径可以跨系统重用。该函数可以被用来获得DeviceInfoData。如果接口存在,但DeviceInterfaceDetailData 为NULL,该函数会失败。

要求

Versions: The SetupDiGetDeviceInterfaceDetail function is available in Microsoft Windows 2000 and later versions of Windows.

Headers: Declared in Setupapi.h. Include Setupapi.h.

Library: Contained in Setupapi.lib. Link to Setupapi.lib.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

SetupDiGetDeviceInterfaceDetail 的相关文章

  • 基于 DETR 的开放世界目标检测

    本文首发于微信公众号 CVHub 不得以任何形式转载到其它平台 仅供学习交流 违者必究 Title Open World DETR Transformer based Open World Object Detection Paper ht
  • MIPI学习记录——(4)mipi数据流实现

    数据流实现 数据流接收过程 1 sensor发送过来的数据 通过data lane到达D PHY 2 D PHY将接收到的data buffer缓存到内部DMA 3 CPU将DDR中的buffer table地址 0x 写入到D PHY的寄
  • 百度地图根据地点名称,获得坐标(但是延时太重,不利于使用)

    localSearch setSearchCompleteCallback function searchResult var poi searchResult getPoi 0 lng poi point lng lat poi poin
  • vue更换主题设置主题

    1 创建一个后缀为 scss文件将下述代码放进去 将scss文件引入main js中 如果引入报错可以网上搜一下 很多 root bg white color fff bg pink color pink bg black color 37
  • 送书

    如图1所示是网易财经展示的贵州茅台股票的历史交易数据 图1 单击 下载数据 超链接 会弹出如图2所示的对话框 选择完成后单击 下载 按钮就可以下载数据了 所下载的数据是CSV格式 图2 CSV Comma Separated Values
  • RTSP流媒体服务搭建

    主要用于测试目的 系统是windows 使用的是docker desktop 3 5 1 1 rtsp simple server 参考 https github com aler9 rtsp simple server docker 运行
  • React中 Real DOM 和 Virtual DOM 的区别?优缺点?

    一 是什么 Real DOM 真实 DOM 意思为文档对象模型 是一个结构化文本的抽象 在页面渲染出的每一个结点都是一个真实 DOM 结构 如下 Virtual Dom 本质上是以 JavaScript 对象形式存在的对 DOM 的描述 创
  • Qt 音乐播放器:实现点击窗体外的地方该窗口自动关闭

    最近在模仿网易云播放器的时候遇到这个问题 点击 播放列表 弹出音乐列表窗体 点击该窗体的其他的地方 该窗口自动关闭 如下所示 ps 录屏的时候 鼠标显示不出来 尴尬 为此 记录实现该种效果的方法 创建该对象的时候 设置坐标和大小都为0 m
  • tcp为什么要三次握手,tcp为什么可靠。

    为什么不能两次握手 防止已失效的连接请求又传送到服务器端 因而产生错误 假设改为两次握手 client端发送的一个连接请求在服务器滞留了 这个连接请求是无效的 client已经是closed的状态了 而服务器认为client想要建立 一个新
  • indexDB & localForage

    一 前言 前端本地化存储算是一个老生常谈的话题了 我们对于 cookies Web Storage sessionStorage localStorage 的使用已经非常熟悉 在面试与实际操作之中也会经常遇到相关的问题 但这些本地化存储的方
  • 没有参数的ajax怎么怎么写,我的ajax没传任何参数请求接口为systemlog/read "?“跟的是什么参数怎么去掉或者说为什么会这样 ?...

    Request URL http localhost 3600 systemlog read callback jQuery1111025511396121069163 1491487798084 Request Method POST S
  • Pycharm(python) 报错: from lxml import etree ModuleNotFoundError: No module named ‘lxml‘

    Pycharm 报错 from lxml import etree ModuleNotFoundError No module named lxml 注 此类错误绝大多数情况下都是环境中少了报错时提示的python包 按照以下方法均可解决
  • Shell--基础--02--变量

    Shell 基础 02 变量 1 定义变量 变量名 值 k v1 定义变量k 值为v1 1 1 注意 变量名和等号之间不能有空格 1 2 命名规则 只能使用英文字母 数字和下划线 首个字符不能以数字开头 中间不能有空格 可以使用下划线 不能
  • linux内网yum源服务器搭建

    1 nginx location root usr local Kylin Server V10 SP3 General Release 2303 X86 64 autoindex on autoindex localtime on aut
  • 下载网页视频并自动合成视频

    本人博客已迁移至 https nasdaqgodzilla github io 1 首先使用Chrome打开网页 单击F12打开开发者工具 开始视频播放 在F12出来的界面中单击Network 在Network中有文件列表 检查当中是否存在
  • 星星之火-48:在LTE中,66.67us的符号发送时间是怎么来的呢?

    66 67us符号的发送时间是怎么来的呢 这就涉及到 发送一个符号所需的时间 即符号周期是怎么来的 1 先从频率的角度看子载波的频率 频分复用 1 LTE基带信号的带宽 1 4MHz 3MHz 5MHz 10MHz 15MHz 20MHz等
  • 企业微信回调接口验签

    文章目录 一 企业微信配置参数 二 验签 三 企业微信客户联系回调 四 相关工具类 企业微信提供了回调接口 允许企业服务商和企业应用接收到企业微信的事件通知和用户操作通知 在接收到回调通知时 需要进行验签操作 以确保通知的安全性和有效性 官
  • html+css+js

    2021年3月16日 一 标签内容 1 声明为HTML5文档 1 用于游览器正确显示网页 2

随机推荐

  • react项目搭建 (eslint+prettier)

    1 安装nodejs 安装git 安装vscode 安装yarn 2 npm install create react app yarn g 在yarn中安装react脚手架 3 在系统资源中配置path 在指定目录下create reac
  • JAVA面试(三)

    1 什么是本地调用 java编译器将包含本地方法的class对应的方法添加ACC NATIVE标识 而JVM负责将动态库加载到内存 Java执行引擎执行到本地方法时找到对应的函数 完成本地方法的调用 2 多线程 3 线程同步怎么实现 1 s
  • MFCC特征值详解

    看了网上的很多MFCC 依然没能够学号MFCC 因此糊了一段时间详细的看了下MFCC的内容 现在也算是对于MFCC有了更深入的理解了 不管是语音识别还是其他的一系列的识别大体都分为三个步骤 1 输入信号的预处理2 特征值提取3 相关算法的识
  • 薪资16K,在阿里外包工作是一种什么体验...

    我17年毕业于一个普通二本学校 电子信息工程学院 是一个很不出名的小本科 大学期间专业知识也没有去认真的学习 所以毕业的时候就随便找了一份工作 在一个小公司做功能测试 记得那时候税前薪资大概是7k左右 因为是在工厂 工作环境很差 也很危险
  • Fabric CA 1.4 官方文档中文版

    链接 Fabric CA中文文档 目录 概述 Fabric CA概述 快速上手 安装前提条件 安装软件 使用Fabric CA命令行 配置软件 Fabric CA 服务器 初始化服务器 启动服务器 配置数据库 配置LDAP 搭建集群 搭建多
  • moviepy快速切分视频并保存片段

    文章目录 1 直接使用ffmepg 2 使用moviepy本身 moviepy安装最新版本 pip install moviepy pre upgrade 版本是v2 0 0 dev2 有两种方法一种快速的 1 直接使用ffmepg fro
  • 基于STM32的DMX512开发笔记

    首先基本了解一下DMX512的基本协议 一 DMX512协议 DMX 是Digital MultipleX 的缩写 意为多路数字传输 DMX512控制协议是美国舞台灯光协会 usITT 于1990年发布的灯光控制器与灯具设备进行数据传输的工
  • 使用小波变换对图像进行去噪

    使用小波变换对图像进行去噪 实现效果 代码 import matplotlib pyplot as plt from skimage restoration import denoise wavelet estimate sigma fro
  • GAN_Unet模型实现

    文章目录 摘要 一 GAN 1 1 输入 输出 1 2 优化目标 1 3 缺点 1 4 CGAN 1 5 LSGAN 1 6 C LSGAN实现 1 7 判别器 总代码 二 Unet 2 1 编码器 2 2 编码器 2 3 效果 2 4 模
  • 深度学习(自编码器)

    深度学习目录 自适应线性单元 Widrow and Hoff 1960 神经认知机 Fukushima 1980 GPU 加速 卷积网络 Chellapilla et al 2006 深度玻尔兹曼机 Salakhutdinov and Hi
  • MVC笔记 初识模型(二)

    1 在视图中创建窗口 新建一个View视图 添加视图 选中复选框 创建强类型视图 需要输入的地方可以用MVC内置的HTML辅助方法来生成字段 需要显示标题的地方可以用 方法 需要显示文本的地方可以使用 方法 在MVC中 可以利用Html B
  • FPGA/IC 秋招笔试/面试题总结(续)

    请根据目录浏览 觉得有用三连支持一下也是一种鼓励 打印版半价半价 联系微信 Crazzy M 原创不易 100页 未经允许 请勿转载 FPGA IC 秋招笔试 面试题总结 目录展示 点击查看 内容展示 FPGA IC 秋招笔试 面试题总结
  • webpack-使用html-webpack-plugin和ejs-loader将侧栏、头部、底部公共html做成模板,并生成合并后的html页面...

    在学习前端自动化之前一直使用 PHP JSP 将在每个页面将头部 侧栏 底部等部分引入 现在前端 娱乐圈 一直噼里啪啦的每天出新东西 自从接触了前端自动化我就觉得这种工作可以交给前端了但一直没时间研究一下 最近有时间看一下 踩了好多坑终于成
  • 10:00面试,10:06就出来了,问题问的实在有点变态

    从小厂出来 没想到在另一家公司又寄了 到这家公司开始上班 加班是每天必不可少的 看在钱给的比较多的份上 就不太计较了 没想到8月一纸通知 所有人不准加班 加班费不仅没有了 薪资还要降30 这下搞的饭都吃不起了 还在有个朋友内推我去了一家互联
  • SVN经典目录结构说明

    SVN经典目录结构说明 SVN的经典目录包含trunk tags branches trunk trunk是主干 也就是主要工作的地方 也是最新的代码存放的地方 branches branches是分支的意思 分支开发和主线开发是可以同时进
  • MySQL数据库和表基础操作

    目录 一 数据库的基本操作 二 表的基本操作 1 表结构操作 2 表数据操作 CRUD增删查改 一 数据库的基本操作 创建数据库 create database 数据库名 切换数据库 use 数据库名 删除数据库 drop database
  • 服务器conda环境打包迁移 dgl安装 版本问题

    总结 租服务器配好conda环境 把环境迁移到没联网的学校服务器 要注意一定要检查两个服务器的CUDA版本是不是不同的 这可能会带来一些问题 因为CUDA是不在conda环境里面的 最后解决安装dgl版本问题还是采用下载whl文件pip离线
  • ICCV 2023

    本文转载自知乎 mywt 已获得作者授权 文章链接 https arxiv org abs 2211 14710 代码链接 3DPPE on petrv1 v2 https github com drilistbox 3DPPE 3DPPE
  • win10环境Vscode快速配置编译运行C文件

    一 安装并正常运行vscode 下载vscode插件 安装C C 插件和code run插件 二 下载MinGW w64 1 下载地址 https sourceforge net projects mingw w64 2 根据电脑配置选择合
  • SetupDiGetDeviceInterfaceDetail

    SetupDiGetDeviceInterfaceDetail 该函数返回设备接口的详细信息 BOOL SetupDiGetDeviceInterfaceDetail In HDEVINFO DeviceInfoSet In PSP DEV