Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
java如何打开程序旁边的快捷方式?_Java_Load_Exe - Fatal编程技术网

java如何打开程序旁边的快捷方式?

java如何打开程序旁边的快捷方式?,java,load,exe,Java,Load,Exe,嗨,我正试图从我的jar文件旁边的文件夹中运行/打开一个快捷方式。我似乎无法像它一直说的那样让它工作 系统找不到指定的文件 你能告诉我我做错了什么吗 JButton btnInstall = new JButton("Install/Run"); btnInstall.setEnabled(false); btnInstall.addActionListener(new ActionListener() { public void actionPerformed(

嗨,我正试图从我的jar文件旁边的文件夹中运行/打开一个快捷方式。我似乎无法像它一直说的那样让它工作

系统找不到指定的文件

你能告诉我我做错了什么吗

JButton btnInstall = new JButton("Install/Run");
    btnInstall.setEnabled(false);
    btnInstall.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            ChangePath(ProgramAdder.programs.get(count).ProgramPath.toString());
            System.out.print(ProgramAdder.programs.get(count).ProgramPath.toString());
        }
    });
    btnInstall.setBounds(173, 226, 116, 45);
    frame.getContentPane().add(btnInstall);

public void ChangePath(String Path){
    try {
        Process process= Runtime.getRuntime().exec(Path);
    } catch (IOException e) {
        e.printStackTrace();
    }
}


如果不需要从
Runtime.exec
保存返回的
进程
对象,则可以使用更简单的方法。提供要打开的
文件。

(1)修复代码块(单击)。(2) 不要使用
setBounds
,使用
LayoutManager
。(3) 您正在传递到
exec(路径)似乎是一个类,但可能是一个定义错误的变量(您没有向我们展示)。(4) 您使用的类是
programaadder
,我们不知道它们是什么。我建议您从头开始编写一个类,只读取您正在查找的文件,看看是否有效。Path是从这个ChangePath传入的字符串(ProgramAdder.programs.get(count.ProgramPath.toString());ProgramAdder只是一个类,它创建地址(3)和部分地址(4)的程序名和路径列表。现在按照我的建议去做,这样你就可以解决你的问题了。嗨,我创建了一个小班,试图打开其中一个文件,但我仍然收到同样的错误,我确定我只是键入了错误的地址,但不确定标准的方法
package Logic;
import java.util.ArrayList;
import java.util.List;

public class ProgramAdder {
public static List<Programs> programs = new ArrayList<Programs>( );

public static void ProgramList(){
    ProgramAdder.addProgram("HD Sentinel","/Shortcuts In Order/1 - HDSentinel.lnk");
    ProgramAdder.addProgram("Defraggler","/Shortcuts In Order/2 - Defraggler.lnk");
    ProgramAdder.addProgram("CC Cleaner","/Shortcuts In Order/3 - CCCLEANER.lnk");
    ProgramAdder.addProgram("Hit Man Pro 64Bit","/Shortcuts In Order/4 - HitManPro 32bit.lnk");
    ProgramAdder.addProgram("Hit Man Pro 32Bit","/Shortcuts In Order/4 - HitManPro 64bit.lnk");
    ProgramAdder.addProgram("Super Anti Spyware","/Shortcuts In Order/5 - SuperAntiSpyware.lnk");
    ProgramAdder.addProgram("Malware Bytes","/Shortcuts In Order/6 - MalwareBytes.lnk");
}
public static void addProgram(String ProgramName,String ProgramPath){
    Programs p = new Programs();
    p.ProgramName = ProgramName;
    p.ProgramPath = ProgramPath;
    programs.add(p);
}

}
   package Logic;

import java.io.IOException;

public class OpenTets {
    public static void OpenProgram(){
        try {
            Process process= Runtime.getRuntime().exec("/Shortcuts In Order/1 - HDSentinel.lnk");
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}