如果只是启动
 Runtime.getRuntime().exec(exefilename);如果有交互,考虑其它方式

解决方案 »

  1.   

    我也想知道这个,我代码如下:
    try {
           Runtime.getRuntime().exec("Test.exe");
        }
        catch (Exception ex) {
          ex.printStackTrace();    }
    报错如下
    java.io.IOException: CreateProcess: Test.exe error=2 at java.lang.Win32Process.create(Native Method) at java.lang.Win32Process.<init>(Win32Process.java:63) at java.lang.Runtime.execInternal(Native Method) at java.lang.Runtime.exec(Runtime.java:566) at java.lang.Runtime.exec(Runtime.java:428) at java.lang.Runtime.exec(Runtime.java:364) at java.lang.Runtime.exec(Runtime.java:326)
    ………………………
      

  2.   

    Runtime.getRuntime().exec(exefilename);
    只是简单的调用可执行程序,如果想要深入就要用jni和jini了
      

  3.   

    根据你情况的不同有不同的解决方案。
    如果是基于分布式开发的话Corba是比较好好的解决方案,如果是本地Runtime.getRuntime().exec(exefilename);只能起调用作用,程序间不能交互。要想交互就要用JNI,但是JNI用了的话,对方的程序就不能跨平台了,当然整体框架做得好的话还是能在其他OS里面运行的,只是调用VC的这部分代码不能用了。
    估计,你们开始设计系统的时候这么大的问题都没有考虑,现在来做,已经比较困难了。
      

  4.   

    充分运用设计模式和JAVA的特性,能够增加JNI的调用模块,而且不本身系统改动不大,你们改VC的可能性不大。