node-odbc for Windows抛出DLL错误

时间:2015-02-07 13:01:34

标签: node.js odbc node-webkit node-odbc

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

我安装了node-odbc模块,并使用包含的测试来查看它是否有效。通过命令行(“node aTestFile.js”)测试数据库连接工作正常,但是当我尝试从node.html 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,则不会发生任何事情。

我需要一些帮助。我做错了什么?

1 个答案:

答案 0 :(得分:0)

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

  1. 针对Windows node_modules的初步安装,首先从nodejs.org安装Nodejs,然后:npm i -g windows-build-tools node-gyp,并确保启用在资源管理器中显示文件扩展名(因此下一步具有文件扩展名'.cc')
  2. 将文件win_delay_load_hook.cc替换为来自GitHub源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/