设备实例 ID 的驱动器盘符

2023-12-01

如何从驱动器号获取设备实例 ID?

我的流程从设备到达消息开始。我已成功从到达消息中获取驱动器盘符并打开 DVD 托盘。

我搜索了各种Setup API项;但我还没有找到任何可以让我从驱动器号到设备实例 ID 的信息。

C# 或 VB.NET 中的解决方案是理想的,但只要我能看到 API 调用,我愿意用任何其他语言来解决它。

提前致谢...


你不能直接这样做。

该链接是使用STORAGE_DEVICE_NUMBER。您可以将 DeviceIoControl 与IOCTL_STORAGE_GET_DEVICE_NUMBER在您的设备名称上填充此结构。将此值放在一边。
然后,您需要使用以下命令获取系统上的设备信息SetupDiGetClassDevs适当设置 GUIDS,指示您感兴趣的驱动器。然后使用以下命令枚举设备SetupDiEnumDeviceInfo。然后使用枚举接口SetupDiEnumDeviceInterfaces最后使用获取信息SetupDiGetDeviceInterfaceDetail。在返回的这个结构中,您可以获得一个 DevicePath,您可以使用它来获取STORAGE_DEVICE_NUMBER如上。将其与STORAGE_DEVICE_NUMBER从您的驱动器号,您现在已将驱动器号链接到您的结构。唷!这个结构内部是一个 DevInst。

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

设备实例 ID 的驱动器盘符 的相关文章

  • 批量设置命令的输出和错误以分隔变量

    在Windows 7批处理 cmd exe命令行 中 我试图将命令的标准输出 stdout 和标准错误 stderr 重定向到单独的变量 因此第一个变量设置为输出 第二个变量设置为输出 变量设置为错误 如果有 而不使用任何临时文件 我已经尝
  • 我如何移动粘性/捕捉 wpf 窗口

    当我移动 主 窗口时 我想移动两个或更多粘性窗口 我想做这样的事情 private void MainWindow PreviewMouseMove object sender MouseEventArgs e if e LeftButto
  • 64 位大型 malloc

    malloc 失败的原因是什么 尤其是在 64 位中 我的具体问题是尝试在 64 位系统上分配一大块 10GB RAM 该机器有 12GB RAM 和 32GB 交换空间 是的 malloc 是极端的 但是为什么它会成为一个问题呢 这是在带
  • 在 C# 中使用反射列出枚举中的值

    我正在尝试使用反射来列出一个 Visual Studio 解决方案内的各个项目中的一些类的公共成员和方法 我尝试访问的所有类都是 C 的 并且它们都是从 C 类访问的 我用来进行这些调用的代码如下 public void PopulateE
  • windows关闭tomcat后保持端口锁定

    我遇到了一个问题 该问题发生在不同站点的 3 台不同服务器上 问题是 当我关闭 Windows 服务器上的 Tomcat 7 和 8 5 版本 服务并尝试重新启动该服务后 该服务将无法启动 因为 tomcat 认为端口仍在使用中 以下是错误
  • Windows 和 python 3.2 的 Pylint 安装问题

    当我尝试使用 pip 在 Windows 上安装 pylint 时 我遇到了这个问题 我真的不知道它来自哪里 C Python33 Scripts gt pip exe install pylint Downloading unpackin
  • “此应用程序已请求运行时以异常方式终止它”的原因是什么?

    Visual C 运行时抛出一个常见错误 此应用程序已请求运行时以异常方式终止它 请联系应用程序的支持团队以获取更多信息 该错误消息实际上是什么意思mean 让我用一个比喻来准确地解释我的问题 如果我看到一条消息 异常 访问冲突 0xc00
  • dia2dump:CoCreateInstance 失败 - HRESULT = 80040154

    我正在尝试使用 Visual Studio 2017 及其在 Windows 7 x64 上转储 PDB 的签名dia2dump https msdn microsoft com en us library b5ke49f5 aspx 我加
  • Windows 睡眠功能极慢

    我正在通过 Windows h 使用 Sleep 命令制作一个程序 并且在 Windows 10 而不是 Windows 7 上运行我的程序时遇到了令人沮丧的差异 我将我的程序简化为下面的程序 它与我的更复杂的程序表现出相同的行为 在 Wi
  • 批处理脚本 FOR 循环仅设置输出的第一个字母 wsl --list -q

    我正在编写一个批处理脚本 将文件从 Windows 目录复制到 WSL 发行版 其中一部分是选择将文件复制到哪个发行版 如果我使用命令wsl list q如果给我以下输出 Ubuntu 22 04 Ubuntu 18 04 我正在尝试使用此
  • VB - 以隐式方式链接 DLL

    我正在开发 VB6 图形界面 并且需要隐式链接到 DLL 这样做的动机来自于我上一个问题 https stackoverflow com questions 5194573 有问题的 DLL 使用静态 TLS declspec thread
  • 如何设置任务在使用 vbs 登录时以当前用户身份运行而无需管理员权限?

    从命令行 我可以创建一个在登录时运行的计划任务 无需管理员权限或用户输入密码来设置任务 但是我必须使用 xml 文件来执行此操作 下面是一个示例 xml 其中 Domain User 部分必须在运行时替换为当前用户的域和名称
  • C++ 使用 Windows 命名管道

    由于某种原因 桅杆和从属装置都失败了 但是我可以找到任何关于它们如何工作的好例子 所以我不确定我哪里出了问题 在 ConnectNamedPipe 之后 主设备永远不会退出 WaitForSingleObject 并且从设备在第一个 boo
  • 为什么 fopen 无法打开已存在的文件?

    我在 Windows XP 上使用 Visual Studio 6 是的 我知道它很旧 构建 维护 C DLL 我遇到了 fopen 无法打开现有文件的问题 它总是返回 NULL 我试过了 通过将 errno 和 doserrno 设置为零
  • 如何使用Python在Django for Windows中激活虚拟环境?

    我被告知要在 Django for Windows 中激活虚拟环境 我应该尝试 environment path Scripts activate 但是当我输入该命令时 cmd 返回此错误 该系统找不到指定的路径 我通过输入以下命令创建了虚
  • 可以读取目标文件吗?

    我很好奇 obj文件 我几乎不知道它们是什么 或者它们包含什么 所以我用 Vim 文本编辑器打开它们 我在里面发现了一种类似外星人的语言 有什么办法可以理解它们代表什么以及它们的内容是什么 另外 它们的用途是什么 Thanks Sure 但
  • 如何验证文件名称在 Windows 中是否有效?

    是否有一个 Windows API 函数可以将字符串值传递给该函数 该函数将返回一个指示文件名是否有效的值 我需要验证文件名是否有效 并且我正在寻找一种简单的方法来完成此操作 而无需重新发明轮子 我正在直接使用 C 但针对的是 Win32
  • Node.js 升级在 Windows 中仍然显示旧版本

    我已使用 msi 安装程序下载并安装了新版本的 nodejs 4 1 2 之后我跑了node v 但它仍然显示旧版本 0 12 2 我尝试重新启动Windows 甚至卸载nodejs并重新安装它 但仍然显示相同的内容 为什么会发生这种情况
  • 如何在 Windows 命令行中使用参数运行 Python 脚本

    这是我的蟒蛇hello py script def hello a b print hello and that s your sum sum a b print sum import sys if name main hello sys
  • 如何使我的表单标题栏遵循 Windows 深色主题?

    我已经下载了Windows 10更新包括黑暗主题 文件资源管理器等都是深色主题 但是当我创建自己的 C 表单应用程序时 标题栏是亮白色的 如何使我自己的桌面应用程序遵循我在 Windows 中设置的深色主题 你需要调用DwmSetWindo

随机推荐

  • 如何处理树枝数组?

    我正在配置一个树枝模板 我如何处理这个数组 a 3 i 0 s 6 Balkon i 1 s 9 M bleret i 2 s 4 Pool 用树枝代码 这是一个序列化数组 称呼unserialize on it
  • 如何向组合框和列表中的选项添加标签?

    我阅读了以下文档 http docs oracle com javafx 2 ui controls combo box htm并且我没有找到任何与我的需求类似的东西 我一直在寻找一种将我的选项分组到组合框中的方法 假设我的组合框是持续时间
  • 将 HashMap 的键和值组合成 Set

    我有一个HashMap
  • 如何使用 Alamofire 快速发布请求 json 正文?

    我需要在 json 正文中为我的应用程序后端发出 POST 请求 但响应返回失败 我假设我的 json 格式或编码是错误的 但我无法弄清楚问题是什么 我尝试了很多不同的解决方案 但未能找到有效的解决方案 谁能看到我的代码的哪一部分导致了失败
  • 如何转义 echo " 以存储在文件中?

    我知道 echo blah blah gt file txt作品 然后echo gt file txt也有效 但是 如果我只想回显一个怎么办 双引号 在文件中 echo gt file txt不起作用 是否可以用一行命令来完成它 Windo
  • 在 Appmaker 中下载文件

    我在 Appmaker 中创建了一个应用程序 我想从 Appmaker 中的云端硬盘表下载某些报告 为此 我目前正在使用 Drive API 创建电子表格 我还想添加下载功能 允许用户在本地计算机中下载电子表格 我已经对 Appscript
  • 将方法名称作为回调传递 VS.用匿名函数包装它

    我有一个按钮 test var obj name John test function console log name this name test on click obj test 这将记录一个空字符串 记录 typeof this
  • QT对话框关闭并删除

    我有一个 MainWindow 和 Type 类 主窗口中的按钮使用以下代码向插槽发送信号 dialog new QDialog this Ui type typeui typeui setupUi dialog dialog gt sho
  • 为什么 Scrapy 返回一个 Iframe?

    我想爬行这个网站通过Python Scrapy 我试试这个 class Parik scrapy Spider name ooshop allowed domains http www ooshop com courses en ligne
  • Android:即时应用程序仅显示白屏

    我试图制作一个基本的 Hello world 即时应用程序 为此我正在关注https developer android com topic instant apps getting started first instant app ht
  • 适用于 Android 的蓝牙和 WIFI 打印

    我们需要一台便携式打印机 手持式 这一点很重要 可以通过蓝牙或wifi连接到Android手机 目前我所知道的 这次没有适用于Android的标准打印SDK 有一个非官方的SDK叫iPrint SDK 你们有人尝试过通过wifi或蓝牙吗 有
  • 带有 Chrome Native Messaging 的 C# 本机主机

    今天我花了几个小时研究如何让 Chrome 原生消息传递与 C 原生主机配合使用 从概念上讲 它非常简单 但是在这些其他问题的帮助 部分 下 我解决了一些障碍 Chrome 原生消息传递 从 Chrome 扩展程序到用 C 编写的本机主机的
  • tomcat 中的自定义会话管理器

    在哪里可以找到有关为 Tomcat 创建自定义会话管理器的文档 例如 如何在 tomcats server xml 中配置会话管理器 必须实现什么接口才能使用我的会话管理器 Q 如何在 tomcats server xml 中配置会话管理器
  • 如何使用 f:ajax event=change 将当前迭代的项目发送到 h:selectBooleanCheckbox

    我有以下表格
  • 使用 C# 在 Visual Studio 中的 3 个 Windows 窗体之间传递数据

    我有一个 Windows 应用程序 有 3 个表单 Form1 2 3 我想发送文本框的文本form2 to form1然后同样的文字来自form1 to form3 那是 文本来自FORM2 gt FORM1 gt FORM3 表单1 有
  • 通过使用文件重定向为其提供输入来运行 Java 程序

    我正在尝试使用文件重定向来运行 Java 程序 我正在用这个简单的程序测试它 package netbeans sanbdox public class Sanbdox public static void main String args
  • 如何禁用Seaborn中hue的嵌套?

    使用时hueSeaborn 中条形图上的参数会更改条形的颜色和位置 就像下面的例子 没有色调的绘图 import seaborn as sns df x 1 2 3 4 y 5 6 7 8 hue a b b a sns barplot d
  • H2 控制台访问 h2 以外的数据库

    H2 控制台 http localhost 8082 login jsp 可以选择查看任何数据库的详细信息 如果我们要与 mysql 或其他数据库服务器通信 我们应该将 jdbc 驱动程序复制到哪里 将 jdbc 驱动程序文件 mysql
  • 在 SharePoint 2010 中编辑 SQL 扩展属性

    如何在 SharePoint 2010 中编辑表的扩展属性 到目前为止 我认为没有任何 开箱即用 的东西可以做到这一点 因此 我假设这意味着我必须创建一个自定义 Web 部件来提取表的扩展属性 然后允许我对其进行编辑 然后在编辑完成后 We
  • 设备实例 ID 的驱动器盘符

    如何从驱动器号获取设备实例 ID 我的流程从设备到达消息开始 我已成功从到达消息中获取驱动器盘符并打开 DVD 托盘 我搜索了各种Setup API项 但我还没有找到任何可以让我从驱动器号到设备实例 ID 的信息 C 或 VB NET 中的