【问题标题】:Detect removeable media检测可移动媒体
【发布时间】:2011-08-15 08:47:26
【问题描述】:

我想检测何时从 PC 中插入或移除移除媒体,并且我已经阅读了很多关于如何做到这一点的主题。

阅读其他线程和页面提供了两种必不可少的方法

  1. 覆盖 WinProc 方法
  2. 进行 SQL 查询

有一个 FileSystemWatcher 类,真的没有“DriveSystemWatcher”之类的吗?

另外,如果我尝试“SQL”方法,它无法编译程序,因为它无法解析“ManagementEventWatcher”,即使我这样做了

使用系统;

使用 System.Management;

我们将不胜感激

问候斯特凡。

【问题讨论】:

  • 如果您希望使用来自System.Management 的类,您是否至少在项目中添加了对System.Management.dll 的引用?
  • 我不确定您所说的“覆盖 WinProc 方法”是什么意思您将如何使用 Sql 来检测媒体插入。无论如何,这似乎是一个骗局......
  • @Dan 当提到 Sql 时,我认为 OP 的意思是“查询 WMI”???
  • “覆盖 WinProc”是在手动捕获低级 Windows 消息时。“SQL 事物”是 @"TargetInstance ISA 'Win32_LogicalDisk' and TargetInstance.DriveType = 5";在我看来一些简化的 sql

标签: c# windows media detect


【解决方案1】:

为了使用来自 System.Management 的类(以便您可以查询 WMI),您需要在项目中添加对 System.Management.dll 的引用。

以下描述了在您完成此操作后使用 WMI 的方法:

Detecting Eject/Insert of Removeable Media

【讨论】:

  • 是的,我忘了包含“System.Management.dll”,谢谢您的提示。
  • 但是,当我在“检测可移除媒体的弹出/插入”中实现代码时,即使我执行“TargetInstance ISA 'Win32_LogicalDisk' 和 TargetInstance.DriveType = 5 或TargetInstance.DriveType = 2"
  • @user765903 HTH - 您需要对该问题添加评论。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-01-26
  • 2012-03-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-03
  • 1970-01-01
相关资源
最近更新 更多