Tag: c#

使用Node.js作为解释器

我想在我的应用程序中embeddedNodeJS。 我想使用NodeJS而不是直接使用V8的原因是因为NodeJS的扩展。 为了做到这一点,我明白,我需要与GYP编译NodeJS。 得到它了。 但是我如何使用它呢? 有没有一个静态库链接到? 如何启动它? 说我想提供一个V8上下文,我如何通过它? 在这里有点不知所措。 希望有所帮助。 注意 – 我想从我的C ++代码中激活nodejs,而不是相反。 我明白扩展,这不是我想要的。 问候,Gal。

Ember.js QT W / Javascript桥梁

我们有一个基于QT C ++(mac和windows)的完整桌面应用程序。 我们利用webkit来提供基于HTML和Javascript的用户界面。 我们也通过JavaScript桥与C ++交互。 我正在做相当的overhall,并把Ember.js作为一个更模块化的UI的MVC。 我的问题涉及坚持最好的方法。 我应该坚持使用我们目前正在使用的Javascript对象,还是转换到Ember数据进行持久化,并通过Ember Data(翻译层)中的函数进行读/写? 此外,我们利用webkit,但我应该看到,而不是使用Node.js而不是strait html / js? 我不想做大的改变,但是我想这样做。 有什么build议?

如何访问nodejs插件中的包装对象属性

我在javascript中有以下代码: var c = new addon.Component(); c.ComponentLength = 3 我应该如何build立我的插件,所以我可以做以前的代码? 我已经按照http://nodejs.org/api/addons.html中的教程,但我卡在这里。 这可能吗? 有没有人有办法解决吗? 提前致谢。

将javascript中的数字转换为4字节的数组

我正在写一个节点服务器,我需要发送一个32位整数到ac#客户端(作为标题)。 我不太确定如何做到这一点,因为位移操作员混淆了我。 我认为我的C#客户端期望这些整数以小端格式(我不知道,我说,因为NetworkStream IsLittleEndian属性是真的)。 所以说,我有一个JavaScript的variables是这样的 var packetToDeliverInBytes = GetByteArrayOfSomeData(); //get the integer we need to turn into 4 bytes var sizeOfPacket = packetToDeliver.length; //this is what I don't know how to do var bytes = ConvertNumberTo4Bytes(sizeOfPacket) //then somehow do an operation that combines these two byte arrays together //(bytes and packetToDeliverInBytes in this example) //so […]

传递SQL Server连接(节点到C#)

我目前正在使用Node.js服务器。 这个服务器使用Edge.js来执行我的C#工作stream程代码(这是一个dll)。 我们正在使用一个自定义的书面日志loggingDLL日志到SQL Server表。 Node.js和我的工作streamdll使用这个日志dlllogging到SQL数据库的步骤。 理想情况下,只需要打开与SQL数据库的连接一次,然后将其用于Node和Edge / c#代码。 有没有办法在Node.js代码中打开连接,然后将连接句柄传递给Edge / C#。 还是有更好的方法来做到这一点? 目前,我只是打开连接,当我打电话给我的C#工作streamDLL,然后在最后closures它。 在Node中这样做会导致一些问题(假设由于asynchronous代码)“System.InvalidOperationException:ExecuteNonQuery需要一个开放的可用Connection,连接的当前状态是打开的。”

如何将const void *传递给node.js?

我正在扩展node-libspotify的libspotify包装以支持专辑封面图片。 到目前为止,我有以下工作的C – 绑定代码: static Handle<Value> Album_Cover(const Arguments& args) { HandleScope scope; // test arguments sanity assert(args.Length() == 2); assert(args[0]->IsObject()); // sp_session assert(args[1]->IsObject()); // sp_album ObjectHandle<sp_session> *session = ObjectHandle<sp_session>::Unwrap(args[0]); ObjectHandle<sp_album> *album = ObjectHandle<sp_album>::Unwrap(args[1]); const byte *image_id = sp_album_cover(album->pointer, SP_IMAGE_SIZE_LARGE); size_t image_size; const void *image_data; if(image_id) { sp_image *image = sp_image_create(session->pointer, image_id); image_data = sp_image_data(image, &image_size); […]

节点插件和v8 GlobalTemplate

我正在构build节点插件与节点0.10.17并在我的一个类我正在做一个上下文的V8。 我有这个代码: v8::Locker locker; v8::HandleScope handle_scope; v8::Handle<v8::ObjectTemplate> globalTemplate; // vvv————— Exception here at ->Set() globalTemplate->Set(v8::String::New("version"), v8::FunctionTemplate::New(NodeVersion)); context = v8::Context::New(NULL, globalTemplate); if (context.IsEmpty()) { fprintf(stderr, "Error creating context\n"); } 这是给我例外->Set()函数调用。 应用程序正在打破。 我该怎么办 ?

nodejs c ++插件中的访问器

如何在一个Node.js的C ++扩展中使用全局variables“X”的setter和getter? 我正在getter和setter方法中获取未定义的“x”。 尝试从此链接执行Static Global Variables程序。 我已经成功地写了一个微小的模块,添加和乘以两个给定的数字。 以下是我的代码 Init(入口点)方法包含 – exports->SetAccessor(String::New("x"), XGet, XSet); 在此之上,我有下面的设置和getter。 Handle<Value> XGet(Local<String> property, const AccessorInfo& info){ return Integer::New(x); } void XSet(Local<String> property, Local<Value> value, const AccessorInfo& info){ x = value->Int32Value(); } 在编译时说 – 'x' was not declared in this scope

从node.js模块获取D9025警告和C1083错误…我没有想法

首先我必须清楚,我绝不是一个JavaScript大师。我只是非常热心,我喜欢学习新东西。 我正在运行带有SP1的Windows 7 Ultimate x64,Windows更新已打开,node.js是v0.10.22。 我已经用Visual Studio C ++ Express版本2008,2010和2012分别尝试了这个过程,每个.net框架都是按照更新顺序安装的。 我也尝试了最初的干净安装后,每个版本的最新服务包。 所以,从理论上说,我应该在某种程度上已经有了各种可能的组合……而且我仔细检查了环境variables,并且为了每个版本都重新启动,只是为了好的措施。 然而它仍然以同样的方式失败。 我设法跟踪回到尽可能多的模块( node-ant , sails等)中的node-gyp rebuild命令,这会抛出: E:\Temp\node-test\node_modules\node-ant\node_modules\usb>node "C:\nodejs\node_modules\npm\bin\node-gyp-bin\\..\..\node_modules\node-gyp\bin\node-gyp.js" rebuild Build started 2013/12/06 19:46:52. __________________________________________________ Project "E:\Temp\node-test\node_modules\node-ant\node_modules\usb\build\binding.sln" (default targets): Target ValidateSolutionConfiguration: Building solution configuration "Release|x64". Target Build: Target usb_bindings: VCBuild.exe E:\Temp\node-test\node_modules\node-ant\node_modules\usb\build\usb_bindings.vcproj "Release|x64" cl : Command line warning D9025: overriding '/MT' with '/MD' cl : […]

NodeJS的一个没有无状态的套接字解​​决scheme

我必须构build一个客户端/服务器应用程序,其中服务器端只是将数据从一个客户端传递到另一个客户端的应用程序。 客户端将用C#编写,如果可能的话,我想在NodeJS中编写服务器。 我会试着解释这个背后的想法。 如果您将此应用程序看作1vs1游戏,最好解释一下。 所以多个客户端可以连接到一个Async服务器。 一个客户端将与另一个客户端匹配,如在Player1 / Player2上下文中。 玩家1可以做一个“移动”。 例如, POCO将被转换为JSON格式。 然后发送给服务器,服务器应该知道应该向哪个对手(Player2)发送数据。 然后作为回报,玩家2可以移动,然后新的数据将通过服务器发送回玩家1。 所以服务器需要列出所有连接的玩家/客户。 所以它可以跟踪玩家的游戏方式,以及他们的分数和分数等。基本上,这是一个无国籍的环境。 我一直在考虑用SocketAsyncEventArgs类在C#中编写服务器。 但是由于NodeJS / Socket.IO已经是一个优化的库,如果我能做到的话,这将节省时间。 我只需要知道是否有可能在NodeJS中做到这一点。 或者我应该坚持一个C#服务器?