怎样用java编程来打开电脑中已经安装的应用程序?
发布网友
发布时间:2022-04-26 19:01
我来回答
共5个回答
热心网友
时间:2023-10-22 10:57
Runtime类中有个exec方法,把可执行文件的路径以字符串的方式放到该方法中,就能在单个线程中打开这个可执行文件了。注意Runtime是单例模式,没有构造函数,只有生成实例的静态方法。部分代码如下:
class RunDemo{
public static void main(String []args) {
Runtime rt = Runtime.getRuntime();
rt.exec("D:\lol\lol.exe"); //该路径是可执行文件的路径
}
}
如有疑惑,欢迎追问!!
热心网友
时间:2023-10-22 10:57
先找到.exe的路径,给你个例子看看
String path = "notepad.exe"; //(C:\Program Files\Tencent\QQ\Bin\qq.exe)
try {
Runtime runtime = Runtime.getRuntime();
Process process = runtime.exec(path);
} catch (IOException e) {
e.printStackTrace();
}
记事本,是windows自带的,qq是你自己安装的,你要写绝对路径
追问我想再问一个问题,就是打开程序之后我能实现自动填充数据,自动点击确定按钮实现连接或者登陆吗?比如vnc viewer,运行之后填充自定义的ip地址,然后自动点击确定登陆?可以实现吗?麻烦指点指点~谢谢!
追答这个我不知道怎么弄了
热心网友
时间:2023-10-22 10:58
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
/**
* @author Hardneedl
*/
final class DeskDemo extends JFrame {
public String getTitle() {return "DeskDemo";}
static private final Dimension size = new Dimension(600,400);
public Dimension getPreferredSize() {return size;}
public Dimension getMaximumSize() {return size;}
public Dimension getMinimumSize() {return size;}
public Dimension getSize(){return size;}
private class DemoShowAction extends AbstractAction{
private JFileChooser fileChooser;
private DemoShowAction() {
super("show desk support");
fileChooser=new JFileChooser(".");
}
public void actionPerformed(ActionEvent e) {
if(JFileChooser.APPROVE_OPTION==fileChooser.showOpenDialog((Component) e.getSource())){
if(!Desktop.isDesktopSupported()){
JOptionPane.showMessageDialog(null, "你的运行环境不支持 Desktop", "Desktop运行环境检查", JOptionPane.ERROR_MESSAGE);
return;
}
File file=fileChooser.getSelectedFile();
if(file!=null){
try {
Desktop.getDesktop().open(file);
} catch (IOException e1) {
e1.printStackTrace();
}
}
}
}
}
DeskDemo() throws HeadlessException {
attachListeners();
doLay();
}
private void attachListeners(){
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private void doLay(){
Container container = getContentPane();
container.add(new JButton(new DemoShowAction()),BorderLayout.NORTH);
pack();
setVisible(true);
}
public static void main(String[] args) {
System.setProperty("swing.defaultlaf","com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
SwingUtilities.invokeLater(
new Runnable(){
public void run() {
new DeskDemo();
}
}
);
}
}
追问我想知道打开一个软件后,怎样获取它的输入框和它的确认按钮,然后编程实现往其输入框中填写数据的方法,模拟人工输入。有什么方法能实现吗?望您能指点!
热心网友
时间:2023-10-22 10:58
Windows电脑中安装的应用程序均是由微软的C++、C#和C系统编程语言开发的,安卓的也都是C/S(客户端/服务器)程序。
Java开发的可以是B/S(浏览器/服务器)程序,如web项目,也可以开发Android程序,但是是安装在安卓手机中的。
综上,java编程无法打开电脑中已经安装的应用程序。
热心网友
时间:2023-10-22 10:59
Process process = new ProcessBuilder("程序路径名称","参数1","参数2").start();