检测卷何时安装

Ale*_* K. 5 node.js electron

我是 Node.js 的新手,实际上我正在使用 Electron。我的应用程序用于配置特定供应商的设备并读取记录的文件。

配置是设备根目录中的文本文件。文件夹中的录制文件。

我想知道新设备何时与安装点连接和断开连接。我可以单独执行此任务(检测并列出安装点),但不知道如何粘合它。为了在附加/分离时进行回调,我使用node-usb模块和

var usb = require('usb'); 
usb.on('attach', ...); 
Run Code Online (Sandbox Code Playgroud)

但没有挂载点,输出示例:

{ busNumber: 253,
  deviceAddress: 3,
  deviceDescriptor:
   { bLength: 18,
     bDescriptorType: 1,
     bcdUSB: 528,
     bDeviceClass: 0,
     bDeviceSubClass: 0,
     bDeviceProtocol: 0,
     bMaxPacketSize0: 64,
     idVendor: 34148,
     idProduct: 4096,
     bcdDevice: 4352,
     iManufacturer: 1,
     iProduct: 2,
     iSerialNumber: 3,
     bNumConfigurations: 1 },
  portNumbers: [] }
Run Code Online (Sandbox Code Playgroud)

我的目标平台 OS X 和 Windows。我看到的唯一方法是在 C++ 上构建本机模块。

有没有一种简单的方法来完成这个任务?

Rob*_*son 1

drivelist 是一个用于处理已安装卷的节点包:https ://github.com/resin-io-modules/drivelist

您可以做的是将其添加为依赖项并调用drivelist.list()每隔一段时间调用一次,比较上一次运行的结果与当前运行的结果的差异,以获取添加或删除的卷的列表。

它支持 Windows、macOS 和 Linux。