Как найти папку "Автозагрузка" с Java?

В моей программе Java, как я могу узнать, где находится папка "Автозагрузка" на ПК пользователя? Я знаю, что это отличается в разных версиях Windows. Мне нужно только мое приложение для работы на Windows. Любой пример кода?

1 ответ

Решение

Это должно работать:

System.getProperty("user.dir")

здесь у вас есть обзор системных свойств:

http://download.oracle.com/javase/tutorial/essential/environment/sysprop.html

С ShellLink создавать ярлыки очень просто. https://github.com/BlackOverlord666/mslinks

Maven:

<dependency>
  <groupId>com.github.vatbub</groupId>
  <artifactId>mslinks</artifactId>
  <version>1.0.5</version>
</dependency>

Обратитесь к ответу /questions/40386982/sozdanie-fajla-yarlyika-iz-java/40386995#40386995

private final String STARTUP_PATH = "/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup";

private void checkAutoStartPresent() {
    File file = new File(System.getProperty("user.home") + STARTUP_PATH + "/YourShortcutFileName.lnk");
    if (!file.exists()) { // shortcut not found
        try {
            ShellLink.createLink("/YourTargetProgramPath.exe", file.getAbsolutePath());
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Другие вопросы по тегам