Tag: c#

在windows上安装node-gd

在过去的几个小时里,我试图在windows上运行node-gd 。 我已经尝试了几次回购,最后find了https://github.com/mikesmullin/node-gd 。 当我跑步 `npm install node-gd` 我收到以下错误: node-gyp rebuild …node_modules\node-gd>node "C:\Program Files\nodejs\node_modules\npm\ bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild Building the projects in this solution one at a time. To enable parallel build, please add the "/m" switch. node-gd.cpp ..\cpp\node-gd.cpp(17): fatal error C1083: Cannot open include file: 'gd.h': No such file or directory […\node_modules\node-gd\build\node_gd.vcxproj ] 我以为我应该安装gd lib,但是当我使用它时,几乎所有的信息都是关于php_gd而不是lib本身。 我应该在哪里放gd文件? […]

如何从c#(.net 3.5)连接node.js服务器

我已经运行了codeplex(SocketIO4Net)上的代码,但是它在.Net 4.0中; 我试图将其转换为3.5:显然面临发行,无法做到这一点。 请告诉我一些方法,以便我可以从.net 3.5连接。 我正在使用winforms而不是专家在套接字。 我将非常感谢您的协助。 谢谢

如何传递Local <Function>作为参数?

我正在使用v8为node.js编写一个C ++库。 我在Windows上,我想从我的C ++代码中调用Win32 API函数EnumWindows 。 EnumWindows接受一个callback函数和可选的callback函数参数作为参数。 我这个C ++库的唯一目标是将EnumWindows公开到javascript-land,并使用如下… mymodule.EnumWindows(function (id) { … }); 所以,我的C ++代码看起来像这样… BOOL CALLBACK EnumWindowsProc(HWND hWnd, LPARAM lParam) { // re-cast the Local<Function> and call it with hWnd return true; } Handle<Value> EnumWindows(const Arguments& args) { HandleScope scope; // store callback function auto callback = Local<Function>::Cast(args[0]); // enum windows auto result […]

使用SocketIO4Net从.NET应用程序传递函数callback到node.js

我想在运行node.js的服务器上调用一个方法。 为此我添加了SocketIO4Net.Client到我的C#项目,但我不知道你通过'函数(callback)'通过方法Emit。 我尝试了几个东西,但我总是得到JSexception'TypeError:对象不是一个函数'。 JS服务器(或在这里https://github.com/hobbyquaker/ccu.io/blob/master/ccu.io.js#L1756 ) socket.on('getObjects', function(callback) { loggerlogger.verbose("socket.io <– getObjects"); callback(regaObjects); }); 代码在客户端 public Task<string> GetObject() { Console.WriteLine("Send GetObject"); var taskCompletionSource = new TaskCompletionSource<string>(); dynamic doStuffJs = new Action(() => Console.WriteLine("Hello 0")); _client.Emit("getObjects", doStuffJs, null, new Action<Object>(Callback)); return taskCompletionSource.Task; } private void Callback(object o) { Console.WriteLine("Hello 1"); } Doku方法发射 /// <summary> /// <para>Asynchronously sends […]

从Node.js运行C库

我对C完全陌生,但有一个小程序(与RaspberryPi上的硬件接口),我希望能够从Node.js运行。 从我可以在Node.js文档中得出的结果,我可以通过将程序导出为NODE_MODULE http://nodejs.org/api/addons.html来运行C ++程序 我一直在想弄清楚C和C ++之间的区别,但我不确定是否可以导出我想作为C ++文件运行的代码(也许通过将文件扩展名更改为.cc?)或者如果有另一个在node.js中使用C代码的方法 此外,我不明白,如果我需要'build立'的C文件,或者如果我可以提供.c文件扩展名的node.js。 我不想使用Node的subprocess运行C代码,但我知道这是可能的。 我更喜欢将C代码作为模块导出,就像Node.js文档所描述的那样。 这里是我正在寻找在node.js中运行的代码 // How to access GPIO registers from C-code on the Raspberry-Pi // Example program // 15-January-2012 // Dom and Gert // // Access from ARM Running Linux #define BCM2708_PERI_BASE 0x20000000 #define GPIO_BASE (BCM2708_PERI_BASE + 0x200000) /* GPIO controller */ // WOULD I INCLUDE NODE.js […]

存在于局域网中的所有IP地址(即设备)列表

我想获得局域网中所有IP地址(即设备)的列表。 我不想使用nmap,其他networking工具。 我也不想ping每个IP地址在一个子网范围内,并find活的IP地址? 有什么办法使用C,C ++?

比较从parameter passing的string

用C ++创build一个node.js插件。 我想检查传递的参数是否hi 。 节点应用程序: addon.Hello("hi"); C ++: if (args[0]->ToString() != "hi") { ThrowException(Exception::TypeError(String::New("Sunday morning rain is falling…"))); return scope.Close(Undefined()); } 但它一直给我的错误: ../xxx.cc:在静态成员函数'static v8 :: Handle xxx :: New(const v8 :: Arguments&)':../xxx.cc:41:29:error:'operator!= no' '(操作数types是'v8 :: Local'和'const char [6]')if(args [0] – > ToString()!=“hi”){^

socket.io-client是否适合作为XSockets.NET服务器的套接字客户端?

我在C#服务器和node.js客户端之间开发了一些套接字桥接器。 首先,我想使用传统的TCP / IP套接字,但是第二个想法是websocket在节点的asynchronous风格编程中更容易。 XSockets.NET看起来不错,干净,我会用它作为一个websocket服务器。 我知道ws广泛用于节点的基本websocket层,但是我们有socket.io或engine.io。 我不知道是否socket.io客户端是一个适当的select作为一个套接字客户端,并希望仔细检查我想念。 在这种情况下你有其他的select吗? 也许,任何抽象层是不需要的,我应该只使用ws .. 谢谢!

使v8对象属性和方法对JS可见

我用node::ObjectWrap包装一个C ++对象,并且有一些定义如下的方法: auto tpl = NanNew<v8::FunctionTemplate>(New); tpl->SetClassName(NanNew("className")); tpl->InstanceTemplate()->SetInternalFieldCount(4); NanSetPrototypeTemplate(tpl, NanNew("method1") , NanNew<v8::FunctionTemplate>(Method1) , v8::ReadOnly); NanSetPrototypeTemplate(tpl, NanNew("method2") , NanNew<v8::FunctionTemplate>(Method2), v8::ReadOnly); NanSetPrototypeTemplate(tpl, NanNew("method3") , NanNew<v8::FunctionTemplate>(Method3) , v8::ReadOnly); NanSetPrototypeTemplate(tpl, NanNew("method4") , NanNew<v8::FunctionTemplate>(Method4), v8::ReadOnly); 一切都按预期工作,我可以通过以下方式在JS中创build对象的实例: var classInstance = new className(); 所有的方法工作得很好,但是当我尝试login函数: console.log(classInstance); 我期待看到像这样的东西: { method1 : [Native Function], method2 : [Native Function], method3 : [Native Function], method4 : [Native […]

将input数据发送到node.js中的subprocess

我正在编写代码在node.js环境中创build一个在线c ++编译器。使用spawn函数我创build了一个subprocess,它将编译代码并执行它并将输出发回给用户。 但我需要发送input到正在运行的c + +程序。 我用了child.stdin.write('data'); 发送数据给孩子,但我认为程序中的cin没有收到input。 请帮助我将input发送到正在运行的c ++代码。 谢谢。