2

我正在将 nodejs 和 node webkit 用于 Windows 应用程序(node-webkit 现在是 NWjs)。

我安装了node-odbc模块并使用包含的测试来查看它是否有效。通过命令行(“node aTestFile.js”)测试数据库连接工作正常,但是当我尝试从 node-webkit 内的 index.html 中调用它时,我收到以下错误:

Uncaught node.js Error 

Error: A dynamic link library (DLL) initialization routine failed. 
c:\Users\SomeUser\Documents\Development\accessingDB\node_modules\odbc\build\Release\odbc_bindings.node
    at Error (native)

如果我尝试将该文件添加为 package.json 中的 node-main,则不会发生任何事情。

我需要一点帮助。我究竟做错了什么?

4

1 回答 1

0

如 NWjs(以前的 node-webkit)的文档中所述,我发现以下解决方案在使用 LTS 版本时适用于 Windows 10:

  1. Windows node_modules 的初步安装,首先从 nodejs.org 安装 Nodejs,然后:npm i -g windows-build-tools node-gyp并确保在资源管理器中启用显示文件扩展名(因此下一步具有文件扩展名“.cc”)
  2. 替换来自 GitHub 源win_delay_load_hook.cc的路径中的文件C:\Program Files\nodejs\node_modules\npm\node_modules\node-gyp\srchttps://github.com/nwjs/nw.js/blob/nw18/tools/win_delay_load_hook.cc
  3. 现在照常进行npm install

对于非 LTS 版本或更多帮助,请参阅官方文档: http ://docs.nwjs.io/en/latest/For%20Users/Advanced/Use%20Native%20Node%20Modules/

于 2019-10-07T07:04:18.363 回答