nodejs:如何通过nodejs调用c ++ DLL函数?

Zex*_* Li 14 c++ dll node.js

我有一个Windows c ++ DLL.它提供了一些像add(1,2)这样的功能.但我没有这个DLL的源代码,是否可以通过nodejs调用此DLL中的函数,我的意思是,通过web端和http.如果可能的话,我该怎么办?

unk*_*han 6

是的,有一些突出的解决方案可以使用Nodejs和native/C++.

查看此node-gyp教程:http://www.benfarrell.com/2013/01/03/c-and-node-js-an-unholy-combination-but-oh-so-right/

或Node-ffi:https://github.com/node-ffi/node-ffi


小智 5

你检查过 ffi Nodejs 库了吗?https://github.com/node-ffi/node-ffi

var ffi = require('ffi');

var libm = ffi.Library('libm', {
  'ceil': [ 'double', [ 'double' ] ]
});
libm.ceil(1.5); // 2
Run Code Online (Sandbox Code Playgroud)

  • 插件系统适用于您编写自己的 C++ 代码以与 Node.js 一起使用时,当您是一位对 C++ 零基础的 JS 开发人员并且只需要使用某人提供的 .dll 文件时,插件系统就有点无用了你。然后你想要像node-ffi这样的东西,它本身就是一个插件,专门设计用作调用代理(并且,它应该带有一个警告,表明你只能靠自己,你最好知道你在做什么,因为段错误现在就在你身上;) (3认同)