嵌入式节点执行.node文件

问题描述

我已经使用Node存储库中的Embed_Test示例构建了Node的嵌入式实例。 使用这个实例,我试图执行一些C ++代码我有一个生成的.node和.dll,并且已经将我的Javascript文件打包了。 当我跑步时,

node dist/bundle.js

运行正常。但是,当我启动嵌入式NodeJS应用程序并尝试运行bundle.js时,出现以下错误(好像无法加载.node文件?):

TypeError: Cannot read property 'testCppCode' of undefined
    at evalmachine.<anonymous>:154:2305
    at s.handle_request (evalmachine.<anonymous>:120:782)
    at s (evalmachine.<anonymous>:113:879)
    at p.dispatch (evalmachine.<anonymous>:113:901)
    at s.handle_request (evalmachine.<anonymous>:120:782)
    at evalmachine.<anonymous>:106:2533
    at Function.v.process_params (evalmachine.<anonymous>:106:3436)
    at g (evalmachine.<anonymous>:106:2476)
    at evalmachine.<anonymous>:259:218
    at s.handle_request (evalmachine.<anonymous>:120:782)

这是我的App.js,之前是Webpack:

var myArgs = process.argv.slice(2);
var ip = myArgs.length >= 1 ? myArgs[0] : "localhost";
var port = myArgs.length >= 2 ? myArgs[1] : "5555";

var fs = require("fs");
var path = require("path");

const express = require("express");
var addon = require("../build/Release/test.node");

const server = express();

server.get("/",(req,res) => {
  var res = addon.testCppCode("Sample",function (err,cpp) {
    var capabilitiesResult = cpp;
    if (err) {
      console.log("Error!");
      console.log(err);
      console.log(cpp);
    } else {
      console.log("Success!");
    }
  });
});

我尝试将test.node和test.dll粘贴到与node的嵌入式实例相同的文件夹中,我尝试将其与webpack放在同一目录中,我尝试将其粘贴在相对位置dir到嵌入式节点(因此它位于../build/Release/)-但错误始终相同。我需要做什么才能使其“看到” .node文件

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)