相关疑难解决方法(0)

检测Windows上插入的USB

我目前正在python中编写一个安全工具,它作为主机上的守护进程运行.每当检测到USB存储设备时,它都会将usb中的所有文件复制到主机上的某个目录.有没有简单的方法来做这种USB检测/接口?提前致谢!

python windows usb

7
推荐指数
2
解决办法
2万
查看次数

如何使用python检测USB设备是否插入?

我想创建一个脚本来检测 USB 驱动器插入计算机后的情况,现在只是在 cmd detector中打印。

注意:我在搜索后使用的是 Windows,我发现我需要使用pyudev 包才能与串行端口通信,并且我需要知道 USB 设备的供应商 ID。

我尝试编写以下代码:

import pyudev
context = pyudev.Context()
monitor = Monitor.from_netlink()
# For USB devices
monitor.filter_by(subsystem='usb')
# OR specifically for most USB serial devices
monitor.filter_by(subsystem='tty')
for action, device in monitor:
    vendor_id = device.get('ID_VENDOR_ID')

    if vendor_id in ['USB\\VID_0930&PID_6544&REV_0100'] or vendor_id in ['USB\\VID_0930&PID_6544']:
        print ('Detected {0} for device with vendor ID {1}'.format(action, vendor_id))

Run Code Online (Sandbox Code Playgroud)

但系统崩溃并显示此错误:

import fcntl ModuleNotFoundError: No module named 'fcntl'
Run Code Online (Sandbox Code Playgroud)

我认为 fcntl 仅适用于 Ubuntu,因为我尝试安装该软件包但它不存在。

python pyudev

6
推荐指数
1
解决办法
9012
查看次数

在Windows 7下从.NET应用程序中查找USB串行端口

我有一个应用程序,寻找具有自定义USB描述符的特定FTDI串行端口.我当前的代码使用Code Project中的示例,它搜索下面的MSSerial_PortNameWMI表root\WMI,并从中提取额外的USB信息root\CIMV2\WIN32_PnPEntity.

这在XP下运行良好,但应用程序也必须在Windows 7上的标准用户下运行.在此环境中,访问root\WMI结果为"拒绝访问" ManagementException.

任何人都可以建议一种方法来交叉引用串口的DOS设备名称到USB信息,同时作为标准用户运行?到目前为止,我已经查看了root\CIMV2\WIN32_SerialPort*表格,但它们只包含主板端口.我也考虑过使用SetupAPI,但我还没有找到一个完整且有效的PInvoke模板.

.net wmi serial-port windows-7

5
推荐指数
1
解决办法
6331
查看次数

标签 统计

python ×2

.net ×1

pyudev ×1

serial-port ×1

usb ×1

windows ×1

windows-7 ×1

wmi ×1