Как найти папку "Автозагрузка" с 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();
}
}
}