NAPI_MODULE导致崩溃

时间:2019-03-26 20:34:15

标签: node.js visual-c++ electron node.js-addon n-api

我正在研究电子内部的c ++本机模块,该模块以前使用v8方法来注册方法。我一直在将此代码转换为使用N-API调用。这是此模块中的代码片段:

static napi_value initialise(napi_env env, napi_value exports)
{
   napi_status rcd;
   napi_value fn;

   try
   {
      rcd = napi_create_function(env, 0, 0, do_about, 0, &fn);
      if(rcd != napi_ok)
         throw std::invalid_argument("unable to create about");
      rcd = napi_set_named_property(env, exports, "about", fn);
      if(rcd != napi_ok)
         throw std::invalid_argument("unable to register about");
   }
   catch(std::exception &e)
   { napi_throw_error(env, 0, e.what()); }
   return exports;
} // initialise

NAPI_MODULE(NODE_GYP_MODULE_NAME, initialise)

当我尝试在电子主进程中加载​​它时,在NAPI_MODULE宏的扩展中遇到访问冲突。我试图通过在我的本机模块的require语句之前将Visual Studio附加到三个电子过程来调试此问题。我已验证未调用initialize()函数,但是存在访问冲突。

这是别人遇到的吗?

0 个答案:

没有答案