Wie kommst du darauf, dass es von deinem Programm kommt? Erstellt es Verzeichnisse/Dateien? Wenn ja, wie. Bitte mit Code.
Ja, es erstellt verzeichnisse. Bzw. ich habe 3 Programme. Einen Installer, um den es hier geht, eine Init.java -> init.jar, die in den Autostart geschoben werden soll, die dann wiederum sich aus dem web eine client.jar läd, lokal speichert und ausführt
Install.java:
Wenn das Betriebssystem Windows 7 ist, lade die ausführbare .jar herunter, speichere sie im Autostartordner von Windows und führe die Datei aus.
[JAVA=23] if (Settings.OS.equals("Windows 7"))
{
String dst = new String(Settings.HOME + "AppData\\Roaming\\Microsoft\\Windows\\Startmenü\\Programme\\Autostart\\" + "init.jar");
try
{
Util.download(Settings.ONLINEBOTBININITEXECUTABLE, dst);
Util.execute("java -jar " + dst);
}
catch (IOException e)
{
e.printStackTrace();
}
}[/code]
Util.java
[JAVA=92] /**
* Downloads a website and save it in a file.
* @param url url to download
* @param file file to save website in
* @throws IOException
*/
public static void download(String url, String file) throws IOException
{
File f = new File(file);
create(f);
URL url2 = new URL(url);
InputStream in = url2.openConnection().getInputStream();
OutputStream out = new FileOutputStream(file);
int status;
byte[] b = new byte[1024];
while (true)
{
status = in.read(b);
if (status <= 0)
{
break;
}
out.write(b, 0, status);
}
in.close();
out.close();
}[/code]
[JAVA=267] /**
* Creates a folder recursive.
* @param dir folder to create
*/
public static void mkdir(File dir)
{
if (!dir.exists())
{
File parent = dir.getParentFile();
mkdir(parent);
dir.mkdir();
}
}
/**
* Creates a new empty file and needed parent directories.
* @param file file to create
* @throws IOException
*/
public static void create(File file) throws IOException
{
if (!file.exists())
{
File parent = file.getParentFile();
mkdir(parent);
file.createNewFile();
}
}[/code]
Nur was anderes (ungetestet): Ich vermute, dass eine jar ins Autostartverzeichnis legen nicht funktionieren wird. Das würde ja heissen, dass ich eine xlsx Datei rein legen kann und Excel startet. Besser wäre es eine Verknüpfung oder ein Script reinzulegen, was dein Jar ausführt.
Ob ich eine .jar reinstecke oder einen link ist generell ja egal. Ist auch erst mal egal. So weit ich mich erinnere wurden meine alten C-Programme aus dem Autostartoderner immer schön ausgeführt.
Danke schonmal für deinen Hinweis!