hehe,
Java里面可以调用windows API吗?
反正我是不知道。

解决方案 »

  1.   

    要不你就直接调用帮助文件
    try{Process run = Runtime.getRuntime().exec("AdvanceOutLook.exe" );}
         catch(IOException ioe){}
    要不你就用JNI业实现。
    直接调用Windows API是不行的。
      

  2.   

    Runtime.getRuntime().exec();
    或者你用jni,在dll中调用api!
      

  3.   

    对,Runtime.getRuntime().exec(param);
    其中param就是你要用的命令.
    大概相当于ShellExecute的功能.
      

  4.   

    请再说得具体一点好吗?
    例如我现在想运行c:\HCW.HLP文件,用如下语句:
    try{ Process run = Runtime.getRuntime().exec("c:\HCW.HLP");}
    catch(Exception ioe){};
    为何编译不能通过,应该如何来写才能调用并运行c:\HCW.HLP文件!
    谢谢!
      

  5.   

    private void runHelp(String fileName){
        try{
          Runtime rt=Runtime.getRuntime();
          String s=cnBean.getcodebase()+"/docs/"+fileName;
          s=s.substring(6,s.length() ) ;
          // System.out.println(s);
          if (myPro == null) {
            myPro = rt.exec("hh.exe " +s);
          }
          else if (currentHelpFile != fileName){
            myPro.destroy();
            myPro = rt.exec("hh.exe " +s);
          }
          currentHelpFile = fileName;
        }catch(Exception ex){ex.printStackTrace();}
      }  呵呵,这是我们的产品中调用的一个使用windows帮助的东东,重点在于
    myPro = rt.exec("hh.exe " +s); 句,hh.exe是windows打开帮助文件的应用程序,明白了吗? 希望对你有帮助!
      

  6.   

    java是不可以调windows的API的,除非你用C#,但是JAVA有自己的API
      

  7.   

    private void runHelp(String fileName){
        try{
          Runtime rt=Runtime.getRuntime();
          String s=cnBean.getcodebase()+"/docs/"+fileName;
          s=s.substring(6,s.length() ) ;
          // System.out.println(s);
          if (myPro == null) {
            myPro = rt.exec("hh.exe " +s);
          }
          else if (currentHelpFile != fileName){
            myPro.destroy();
            myPro = rt.exec("hh.exe " +s);
          }
          currentHelpFile = fileName;
        }catch(Exception ex){ex.printStackTrace();}
      }
    这是一个例子,运行正常,希望对你有帮助。重点在于“rt.exec("hh.exe " +s);” 其中的hh.exe是windows用来打开帮助文件的应用程序!  :)
      

  8.   

    phoenix_zd(天马行空),你的方法好像同gja106(中文字符)的解决方法没有本质区别啊!我还是不知道具体如何打开c:\HCW.HLP文件,能说得详细一点吗?万分感谢!
      

  9.   

    try {
          Runtime rt=Runtime.getRuntime();
          String [] cmd;
          ////要执行的命令
          cmd[0] = "winhelp.exe";
           /// 命令的参数 c:\HCW.HLP
          cmd[1] = fileName;
          rt.exec(cmd);      }catch(Exception ex){ex.printStackTrace();}
      

  10.   

    谢谢!给分!继续关注!再问个问题:winhelp文件为何不能打开.hlp文件,我用的是2000server,总是提示“此文件不是Windows帮助文件”,“帮助的更新版本需要来读取此帮助文件”!
    这是为何?请赐教!
      

  11.   

    唉,你就只要把我的“myPro = rt.exec("hh.exe " +s);”中的s替换成你的目标文件不就行了,真是搞不懂你了!  :)
      

  12.   

    phoenix_zd(天马行空) :
    万分感谢,我还以为你的这个函数是杜撰的呢!谢了!