如何在NodeJS中调用SS生成的DLL

要想在NodeJS中调用SS生成的DLL, 需要借助EdgeJS.

EdgeJS: http://tjanczuk.github.io/edge/

如果你还不知道如何在SS 中生成DLL, 请查看: Spider Studio 新版本 (x-mas) - 可以引入第三方程序集, 可以将脚本生成为DLL

下面以曾经写过的XML/JSON互转的脚本为例 (C#中 另辟蹊径解决JSON / XML互转的问题) 说明如何在NodeJS中应用SS DLL:

1. 安装edgejs

npm install edge

2. 为 www.utilities_online.info.XmlJsonConverter.dll编写一个javascript的代理 脚本

一共两个方法, Xml2Json & Json2Xml:

var edge = require('edge');

exports.xml2json = edge.func({
    source: function() {/*

        using System.Threading;
        using System.Threading.Tasks;
        using www.utilities_online.info;

        public class Startup
        {
            public async Task<object> Invoke(object input)
            {
                object result = null;
                Thread t = new Thread(new ParameterizedThreadStart((p) => {
                    using(var proxy = new XmlJsonConverter())
                    {
                        proxy.Init();
                        result = proxy.Xml2Json(p.ToString());
                    }
                } ));
                t.SetApartmentState(ApartmentState.STA);
                t.IsBackground = true;
                t.Start(input);
                while (t.ThreadState != ThreadState.Stopped)
                {
                    Thread.Sleep(100);
                }
                return result;
            }
        }
    */},
    references: [ __dirname + '\\www.utilities_online.info.XmlJsonConverter.dll' ]
});

exports.json2xml = edge.func({
    source: function() {/*

        using System.Threading;
        using System.Threading.Tasks;
        using www.utilities_online.info;

        public class Startup
        {
            public async Task<object> Invoke(object input)
            {
                object result = null;
                Thread t = new Thread(new ParameterizedThreadStart((p) => {
                    using(var proxy = new XmlJsonConverter())
                    {
                        proxy.Init();
                        result = proxy.Json2Xml(p.ToString());
                    }
                } ));
                t.SetApartmentState(ApartmentState.STA);
                t.IsBackground = true;
                t.Start(input);
                while (t.ThreadState != ThreadState.Stopped)
                {
                    Thread.Sleep(100);
                }
                return result;
            }
        }
    */},
    references: [ __dirname + 

'\\www.utilities_online.info.XmlJsonConverter.dll' ]
});

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索thread
, using
, edge
, result
, proxy
, nodejs读取json文件
, nodejs应用
, Nodejs生成Excel表格
, threading
, json2
, 字典和JSON互转
, map和json互转
json格式互转
nodejs调用dll、nodejs调用dll方法、nodejs 调用c dll、c调用matlab生成的dll、qt 调用 vs生成的dll,以便于您获取更多的相关知识。

时间: 2024-09-06 14:22:06

如何在NodeJS中调用SS生成的DLL的相关文章

mfc-LabView中调用MFC-Wizard生成的DLL实现自定义文件对话框功能出错

问题描述 LabView中调用MFC-Wizard生成的DLL实现自定义文件对话框功能出错 VC创建MFC-Wizard生成的Dll,在导出函数MyFileOpen中调用由CFileDialog派生类CMyFileDlg实现自定义文件对话框.再在LabView中引用库函数节点调用MFC生成的DLL,输入输出参数设置输入类型int32.输出为C字符串指针即为文件对话框返回的选中目标文件路径. 如上配置完成后,运行弹出1097错误,用error_out屏蔽后,返回路径没有输出结果.DLL调试执行My

如何在Delphi中调用VC6.0开发的COM

上次写了如何在VC6.0下对Delphi写的COM进行调用,原本想马上写如何在Delphi中调用VC6.0开发的COM时,由于在写事例程序中碰到了个很怪的问题,在我机子上用VC写的接口程序编译能通过.但是调用就会出现问题,(在VC下调用也是一样的出现).但是用Delphi写的接口程序编译后,不管是在VC下还是在Delphi下调用都没有问题.后来我把VC开发的接口程序编译后,拷贝到其它机子上试,怪事,完全没有问题了.总结后才知道是我机子有点问题.我到现在还没有解决为什么在我的机子上不行,在其它机子

数据库-如何在vfp中调用某一特定word文档的邮件合并功能?

问题描述 如何在vfp中调用某一特定word文档的邮件合并功能? 如下操作应该怎么实现? 已经做好了一个需要邮件合并的word模板,插入了合并域,引用了vfp数据库中的数据, 在VFP中通过表单录入数据存入数据库, 将刚才录入的数据通过一个vfp的程序或命令在word文档中进行邮件合并生成需求的文档然后保存到指定位置. 想做这样一个东西,可是最后一步里不知道怎么写.

实例学习如何在ASP中调用DLL

本文通过VB5.0创建ActiveX DLL文件,这个文件模拟了一个掷色子的过程,向大家介绍如何在ASP中调用DLL的文章专题. 动态联接库(DLL)是加快应用程序关键部分的执行速度的重要方法,但有一点恐怕大部分人都不知道,那就是在ASP文件也能通过调用DLL来加快服务器的执行速度,下面我简单的介绍一下在ASP文件调用DLL的步骤.  首先,必须得有DLL文件,本例是通过VB5.0创建ActiveX DLL文件,这个文件模拟了一个掷色子的过程.  在VB5.0的环境下,新建一个工程,并双击新建工

qt gui-如何在qtdesigner中调用并修改图片

问题描述 如何在qtdesigner中调用并修改图片 选择文件路径并展示QAQ求大神指点,用qt designer实现 解决方案 图片先添加到资源里面(工程右键--添加新文件--Qt--Qt Resource File)然后可以用styleSheet来设置,比如: border-image: url(:/new/login/login.png); 解决方案二: 图片修改

android-如何在service中调用当前正在运行的activity

问题描述 如何在service中调用当前正在运行的activity 如何在service中调用当前正在运行的activity 获取到activity,不是名字,请尽量描述完整一点 解决方案 不建议这么做. service中如果持有activity的实例, 在service没有被销毁之前,activity无法被回收会导致内存泄露问题. 当然如果非要这么做,你可以获取当前堆栈的栈顶activity. 解决方案二: 获取当前正在运行的Activity状态栏返回到当前正在运行的ActivityNotif

如何在matlab中调用caffe的函数实现网络的训练和测试?

问题描述 如何在matlab中调用caffe的函数实现网络的训练和测试? 我要在matlab中使用caffe的函数,但是我不知道应该调用那些函数,具体的顺序是什么,我要实现的是用我自己的数据集去训练一个网络,并且测试它的,我已经有了deploy.prototxt,solver.prototxt,train_val.prototxt这三个文件,我想要一个详细的调用Caffe函数的代码,或者调用函数的流程(写出函数名)

我有一个编译好的libusb.so文件,请问如何在eclipse中调用?

问题描述 我有一个编译好的libusb.so文件,请问如何在eclipse中调用? android开发,实现usb跟手机的数据传输问题,很急,望大神帮忙! 解决方案 Linux下C++ Eclipse调用so文件调用.so文件windows下编译使用NDK,调用SO文件 解决方案二: http://blog.csdn.net/gf771115/article/details/19577355

如何在python中调用ffmpeg的命令行语句

问题描述 如何在python中调用ffmpeg的命令行语句 问题是这样的:在ubuntu环境下,想在python程序中调用ffmpeg的一条命令: ffmpeg -i yourVideo.mp4 -vf select='eq(pict_type,I)' -vsync 2 -s 160x90-f image2 thumbnails-%02d.jpeg 在python程序中应该怎么写.哪位朋友能指导一下,十分感谢. 解决方案 可以用subprocess,https://docs.python.org