首页 > 编程学习 > 通过java代码调取C#应用程序并实现数据交互

通过java代码调取C#应用程序并实现数据交互

主要介绍通过java调用C#的应用程序,并传递参数给C#客户端。之前做项目遇到了这个功能,顺便把代码分享出来;

要求:

1.java是web框架,部署在服务器中

2.C#客户端(是exe文件)放在服务器中,C#程序负责调取另外一台服务的数据

3.javaweb项目和C#客户端是在同服务器中

3.要求java代码启动C#程序,并传递一个参数给C#;当然C#是控制台程序Main方法

4.更值得注意的是C#客户端代码中有访问网络驱动盘路径,网络驱动盘(意思是将另台服务器的盘映射到本地服务器中,在来访问路径),这样就存在一个大问题,

在服务器中通过人工直接启动C#客户端是没问题的,可以访问网络驱动盘路径;问题来了,通过javaweb前端按钮执行java代码在调取C#客户端,这时C#客户端找不到网络映射驱动路径,因此需要修改C#代码,实现网络驱动盘共享出来。关于通过web方式调取应用程序无法访问网络驱动盘,放到另外个博客中,这儿就不做介绍了。

实现:

java代码:

/**

*command是exe路径,如(D:\\C#.exe)

*param是传递给exe的参数

*注意不要用process调取程序,因为无法传参

**/

private boolean ExecBat(String command,String param){
try {

ProcessBuilder p= new ProcessBuilder(command,param);//只能用processbuilder,不用process
p.start();
} catch (IOException e) {
return false;
}
return true;
}

Copyright © 2010-2022 ngui.cc 版权所有 |关于我们| 联系方式| 豫B2-20100000