Установка node_usb_detection для Electron в Windows 10

1

Я пытаюсь обнаружить вставку USB-накопителя в Electron в Windows 10. (electronic.atom.io)

Я установил npm node_usb_detection и успешно восстановил собственный модуль node_usb, от которого он зависит.

Следующая строка (5) в usb.js файла node_usb модуля вызывает ошибку:

var usb = exports = module.exports = require(binding_path);

Ошибка:

binding_path : C:\Users\Developer\Desktop\tmp\electron-quick-
start\node_modules\usb\src\binding\usb_bindings.node

App threw an error during load
Error: A dynamic link library (DLL) initialization routine failed.
\\?\C:\Users\Developer\Desktop\tmp\electron-quick-start\node_modules\usb\src\binding\usb_bindings.node
at process.module.(anonymous function) [as dlopen] (ELECTRON_ASAR.js:173:20)
at Object.Module._extensions..node (module.js:598:18)
at Object.module.(anonymous function) [as .node] (ELECTRON_ASAR.js:173:20)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
at Object.<anonymous> (C:\Users\Developer\Desktop\tmp\electron-quick-start\node_modules\usb\usb.js:5:38)
at Object.<anonymous> (C:\Users\Developer\Desktop\tmp\electron-quick-start\node_modules\usb\usb.js:394:3)

Может ли кто-нибудь предложить, что я могу сделать, чтобы исправить эту ошибку? Это не весело!

(Мне пришлось установить python2.7, SDK8.1 и vs2013, чтобы восстановить usb_bindings.node, но это не usb_bindings.node проблему.)

Теги:
electron
usb
libusb

1 ответ

1

Вам нужно electron-rebuild https://github.com/electron/electron-rebuild, так как Electron, скорее всего, использует другую версию V8 из бинарного узла Node, установленного в вашей системе, вам нужно вручную указать местоположение заголовков Electron при построении встроенные модули и electron-rebuild делают это за вас.

npm install --save-dev electron-rebuild

// Every time you run "npm install", run this or 
// bind it to a npm script in your package.json:
./node_modules/.bin/electron-rebuild

// On Windows if you have trouble, try:
.\node_modules\.bin\electron-rebuild.cmd
  • 0
    Я попробовал это, и он работает, сообщает Rebuild Complete, а затем просто УДАЛЯЕТ мой файл usb_bindings.node , LOL! (Доброе горе, Чарли Браун - это продолжается и продолжается ...)
  • 0
    возможно, он полагается на prebuild тогда вам нужно добавить параметр --build-from-source и установить для переменной env npm_config_build_from_source значение true . Родные модули могут быть очень хитрыми: P
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню