import java.io.IOException;
public class ProgrammStarter {
// Abfragen von Betriebssystem-spezifischen Variablen
String zeilenvorschub = System.getProperty("line.separator"), // Trennzeichen bei Pfadangaben: z.B.: "\"
trennzeichen = System.getProperty("file.separator"), // Funktionszeichen für Zeilenvorschub: z.B.: "\n\r"
windowsVerzeichnis = System.getenv("windir"); // Windows-Verzeichnis: z.B.: "C:\Windows"
public ProgrammStarter(){
System.out.println( "Mit diesem Programm kannst du ein beliebiges externes Programm (also eine EXE-Datei) starten"+zeilenvorschub+
"(bei BAT-Dateien muss die Endung '.bat' angegeben werden!)"+zeilenvorschub);
}
public void programmStarten(String name){
Runtime rt = Runtime.getRuntime(); // Objekt der Klasse "Laufzeit" wird beschafft
// statische Factory-Methode (Ersetzt den Konstruktor)
String pfad = "C:"+trennzeichen+"Program Files"+trennzeichen+"BlueJ"+trennzeichen; // Den Pfad musst du natürlich für andere Anwendungen anpassen!
// um BlueJ zu starten, gib beim Methodenaufruf "bluej" an
try{ // versuche wenn Programm installiert ist
rt.exec(pfad+name); // gewünschtes Programm wird ausgeführt
System.out.println("Das Programm "+name+" wird ausgeführt.");
}
catch(IOException e){ // Die "geworfene Exception" (der möglicherweise auftretende Fehler) "Programm nicht vorhanden"
// wird "abgefangen"
System.err.println("Das Programm "+pfad+name+" existiert nicht.");
}
}
}