Tag: c#

我想调用一个函数,它是从node.js javascript中写入“C”DLL的?

我想从node.js javascript中调用一个写在“C”DLL中的函数。 我在node.js和electron中使用“ffi”模块。 我想调用的函数是“int FDColor_GetSWVersion(char * softwareVersion)”。 我正在使用下面的代码: var libm = ffi.Library(__dirname + "\\viewmodels\\FDColor.dll", { 'FDColor_GetSWVersion': [ 'int', ['string' ] ] }); 但我得到错误“dynamic链接错误:Win32错误126”。 任何人都可以请帮我

Facebook Messenger API在c#asp.net mvc应用程序中的实现

在node.js中实现 app.post('/webhook/', function(req, res) { console.log("message received " + req.body); if(!req.body){ console.log("no request body found"); res.sendStatus(200); return; } messaging_events = req.body.entry[0].messaging; for (i = 0; i < messaging_events.length; i++) { event = req.body.entry[0].messaging[i]; sender = event.sender.id; console.log("sender " + event.sender + ", message " + event.message.text); if (event.message && event.message.text) { text = event.message.text; // […]

在尝试检索时,通过nan传递数组返回未定义

我目前正在使用他们的c ++ / v8系统为NodeJS编写一个本地插件,并试图从Javascript写入一个数组到C ++,然后再检索它。 每当我尝试从数组中检索一个值并将其返回时,它将返回一个空数组 – 正如我最近潜入c ++中,我不确定这是我的误解指针/ c ++基础或NodeJS c ++交互。 我的档案如下: functions.cc #include "functions.h" #include <node.h> #include <nan.h> using namespace std; using namespace v8; NAN_METHOD(nothing) { } NAN_METHOD(aString) { info.GetReturnValue().Set(Nan::New("This is a thing.").ToLocalChecked()); } NAN_METHOD(aBoolean) { info.GetReturnValue().Set(false); } NAN_METHOD(aNumber) { info.GetReturnValue().Set(1.75); } NAN_METHOD(anObject) { v8::Local<v8::Object> obj = Nan::New<v8::Object>(); Nan::Set(obj, Nan::New("key").ToLocalChecked(), Nan::New("value").ToLocalChecked()); info.GetReturnValue().Set(obj); […]

本机代码Typescript编译器

我真的很喜欢Typescript作为Javascript的一个理智的替代品,但我讨厌它拉动node.js作为依赖。 更糟糕的是,这个语言似乎只有一个编译器,而且是自行托pipe的。 没有任何独立的tsc可执行文件? 要清楚,我不想执行任何事情,我只想要一个编译器,它接收打字稿源文件的列表,并产生一个或多个javascript对象文件。

Node.js 6 addon将Buffer.from()转换为const UInt8 *

嘿,我知道人们问过这个问题之前,无论出于何种原因,典型的答案不适合我。 基本上我有一个无符号的字节数组: var message = Buffer.from([ 0x27, 0x52, 0x00, 0x8E ]) myAddon.test(message); 在我的C ++模块中,我需要将ByteBuffer变成一个const UInt8 *数据结构。 我的代码目前是: #include <node.h> using v8::FunctionCallbackInfo; using v8::Isolate; using v8::Local; using v8::Object; using v8::Value; using v8::Exception; void test(const FunctionCallbackInfo<Value>& args) { Isolate* isolate = args.GetIsolate(); if (!args[0] ->IsObject()) { isolate -> ThrowException(Exception::TypeError( v8::String::NewFromUtf8(isolate, "All arguments must be string") )); return; […]

节点JS – C ++插件的testing策略

我为Node JS编写了一个或两个本地C++模块,但总是倾向于在Javascript编写模块的testing。 这是一个有效的testing策略,还是有更好的方法来testing(也可能是debugging)本机模块代码?

如何使用Nan :: MakeCallback从nodejs插件发送事件到JavaScript?

原谅我是Node和Nan的初学者。 现在,我想从nodejs插件发送事件到JavaScript。 v8::Local<v8::Object> obj Nan::Persistent<v8::Object> persistent; persistent.Reset(obj); v8::Local<v8::Object> orig_obj = Nan::New(persistent); v8::Local<v8::Value> argv[1] = {Nan::New("New Data").ToLocalChecked()}; Nan::MakeCallback(orig_obj, "emit", 1, argv); 但是,分割错误(核心转储)那么,如何使用Nan :: MakeCallback呢? 谢谢!

基于微软Bot框架的机器人可以连接到多个渠道?

所以我现在已经检查了多个示例,但是我还没有看到连接到Facebook和Skype的聊天机器人,而不仅仅是其中之一,如果您的机器人可以连接到多个渠道,是否有一个在代码中的方式来区分消息来自哪个频道?

在特定的cmake目标之前运行npm命令

我正在尝试用CMake来构build基于QT的应用程序,并且一切都很顺利。 我遵循这个教程,我可以build立我的应用程序。 现在我想运行npm run build之前使用add_custom_command它似乎并没有像预期的那样运行。 构build过程失败 RCC: Error in 'tray-icon/systray.qrc': Cannot find file 'html/js/app.full.js' AUTORCC: error: process for.build/Debug/x64/tray-icon/CMakeFiles/tray-icon.dir/qrc_systray.cpp failed: RCC: Error in 'tray-icon/systray.qrc': Cannot find file 'html/js/app.full.js' 你能告诉我如何执行npm命令之前在tray-icon/systray.qrc构buildvalidation步骤? 这是我的cmake文件 cmake_minimum_required(VERSION 2.8.11) project(tray-icon) set(CMAKE_AUTOMOC ON) set(CMAKE_AUTORCC ON) set(CMAKE_INCLUDE_CURRENT_DIR ON) find_package(Qt5Widgets 5.5) find_package(Qt5Qml 5.5) find_package(Qt5WebEngine 5.5) find_package(Qt5WebEngineCore 5.5) find_package(Qt5WebEngineWidgets 5.5) # generate rules for building source files […]

Nodejs Addon – 将正则expression式string传递给C ++

我想弄清楚如何在C ++中创build一个正则expression式。 我想将从JavaScript传递到C ++的string转换为正则expression式。 我有这个: std::regex re; if (!args[1]->IsString()) { Nan::ThrowTypeError("Second argument to 'replace-line' must be a string regular expression."); return; } else{ v8::String::Utf8Value regexin(args[1]->ToString()); re(*regexin); } 但是这个编译失败,出现这个错误: ../hello.cpp: In function 'void Method(const v8::FunctionCallbackInfo<v8::Value>&)': ../hello.cpp:50:16: error: no match for call to '(regex_t {aka re_pattern_buffer}) (char*)' re(*regexin); 任何人都知道我可以声明/创build一个regex给这个v8::String ?