启动时启动Java应用程序

发布于 2021-01-30 16:53:47

我有一个Java应用程序。

该应用程序具有一个设置,该设置决定该应用程序是否在启动时启动。

目前,我可以通过在“启动项目”文件夹中放置/删除快捷方式来实现此目的。

但是,我想知道是否有更好的方法来处理此行为。

编辑

是的,它是Windows。抱歉,之前没有清除该内容。

该应用程序具有一个用户可以在其中触发动作的UI,并且该应用程序在运行时会定期在后台运行一些任务。

@Peter,如何在应用程序中使用代码更改注册表?该方法与所有版本的Windows兼容吗?

关注者
0
被浏览
109
1 个回答
  • 面试哥
    面试哥 2021-01-30
    为面试而生,有面试问题,就找面试哥。

    下面是一个小示例片段,说明如何从应用程序内部完成该操作

    static final String REG_ADD_CMD = "cmd /c reg add \"HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" /v \"{0}\" /d \"{1}\" /t REG_EXPAND_SZ";
    private void exec(String[] args) throws Exception
    {
        if (args.length != 2)
            throw new IllegalArgumentException("\n\nUsage: java SetEnv {key} {value}\n\n");
    
        String key = args[0];
        String value = args[1];
    
        String cmdLine = MessageFormat.format(REG_ADD_CMD, new Object[] { key, value });
    
        Runtime.getRuntime().exec(cmdLine);
    }
    

    我非常确定这将适用于所有版本的Windows,因为它们都使用相同的Startup \ Run注册表项。

    希望有帮助!:)

    信用



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看