NAPI_MODULE, вызывающий сбой - PullRequest
0 голосов
/ 26 марта 2019

Я работаю над собственным модулем 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. Я попытался отладить это, подключив визуальную студию к трем электронным процессам, прежде чем требовать утверждения для моего собственного модуля. Я проверил, что функция initialise () не вызывается, но есть нарушение прав доступа.

Это то, с чем сталкивались другие?

...