Собственная ошибка обратного вызова аддона Node.js - указанная процедура не найдена

Я пишу собственный аддон Node.js. Все работает денди за исключением использования обратных вызовов. У меня есть метод в DLL, который требует регистрации обратного вызова функции C++ - он берет функцию, а затем вызывает ее, когда получает новые данные, что достаточно просто. То, что я хотел бы сделать, находится в моем файле.cc, передать локальный метод через, и когда этот метод вызван, вызвать обратный вызов JavaScript. Вызов обратного вызова JavaScript сам по себе, сохранение обратного вызова и его последующий вызов работает нормально.

в моем addon.cc у меня есть метод, который ничего не делает, кроме вызова сохраненного обратного вызова:

 static int __stdcall ReadCallback(RESULT* pResult){
 const unsigned argc = 1;
 v8::Local<v8::Value> argv[argc] =  { Nan::New("bah").ToLocalChecked() };
 Nan::MakeCallback(Nan::GetCurrentContext()->Global(), callback, argc, argv);
   return 0;
}

У меня есть метод открытого узла, который можно вызвать:

void RunCallback(const Nan::FunctionCallbackInfo<v8::Value>& info) {
   PipsLibrary::Functions::RegisterReadCallback(ReadCallback);
   v8::Local<v8::Function> cb = info[0].As<v8::Function>();
   callback = cb;
}

Все мои другие методы узла, обращающиеся к внешнему C++ .DLL, работают, просто передача этой функции в качестве аргумента из.cc выдает ошибку при запуске: "Uncaught Error: указанная процедура не найдена".

Не уверен, в чем проблема, или я могу указать метод в файле.cc для передачи в C++ в качестве обратного вызова.

0 ответов

Другие вопросы по тегам