扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
一般来讲,那是不可能的。
专注于为中小企业提供成都网站建设、网站制作服务,电脑端+手机端+微信端的三站合一,更高效的管理,为中小企业松原免费做网站提供优质的服务。我们立足成都,凝聚了一批互联网行业人才,有力地推动了成百上千家企业的稳健成长,帮助中小企业通过网站建设实现规模扩充和转变。
JNI的工作原理,对于native 调用java而言,就是创建VM。
所以vbs中调用本质上与命令行方式没有区别。
当然,如不觉得麻烦,用一个native的wrapper也行。
非一般而言,就是另外一种方式使用gcj之类的编译器编译java程序为native,vbs直接使用native方式。
再非一般,
使用结构通讯方式,java和native都各自修改特定内存结构,但是千万要注意同步的问题。
javolution,protobuf之类如此,还有个chronXXX什么的
C:\Program Files\Apache Software Foundation\Tomcat 7.0\binwscript "C:\\Program
Files\\Apache Software Foundation\\Tomcat 7.0\\bin\\tomcat.vbs"
C:\Program Files\Apache Software Foundation\Tomcat 7.0\bintomcat
java代码:
Process process=Runtime.getRuntime().exec("cmd /c wscript \"C:\\Program Files\\Apache Software Foundation\\Tomcat 7.0\\bin\\tomcat.vbs\"");
// wait for the process end
process.waitFor();//是返回值
用ScriptEngineManager类中的方法
比如:
//创建脚本引擎
ScriptEngineManager manger=new ScriptEngineManager();
ScriptEngine se=manger.gerEngineByName("VBScript");//脚本类型
se.eval(new FileReader("ex.vbs"));//文件路径
给你个例子吧。
echoargs.vbs 脚本内容如下:
Set objArgs = WScript. Arguments
For x = 0 to objArgs.Count - 1
WScript.Echo objArgs(x)
Next
cmd命令行进入脚本所在目录,运行 echoargs.vbs Hello World
就会将这两个参数分行打印出来。
这种方式相当于 cscript echoargs.vbs Hello World
即前面省略了 cscript (命令行方式调用使用cscript而不是wscript)。
直接在命令行中运行cscript.exe而不加任何参数,会得到使用帮助信息。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流