用于Windows的node-odbc引发DLL错误

问题描述 投票:2回答:1

我正在为Windows应用程序使用nodejs和node webkit。

我安装了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,则什么也没有发生。

我需要一点帮助。我在做什么错?

node.js odbc node-webkit node-odbc
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\src处的文件https://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/

© www.soinside.com 2019 - 2024. All rights reserved.