Ola pessoal, estou precisando de ajuda. Preciso criar um programa que lista cada aplicativo ou pasta aberto pelo usuário para criar uma espécie de log. Consigo listar os programas em execução no momento sem problemas, mas gostaria de incrementar minha rotina de modo que em intervalos de tempo (10min por exemplo) o programa acrescentasse a lista apenas os programas que ainda não foram listados.
Se alguem puder ajudar, fico muito agradecido. Abaixo segue o código que estou utilizando hoje.
String usuario = System.getProperty("user.name");
DateFormat dataFormatada = new SimpleDateFormat("dd-MM-yyyy");
String data = dataFormatada.format(new Date());
FileWriter writer = new FileWriter(new File("saida"+data+".txt"),true);
PrintWriter printer = new PrintWriter(writer, true);
printer.println(usuario+" - "+data);
try{
Runtime runtime = Runtime.getRuntime();
String cmds[] = {"cmd", "/c", "tasklist"};
Process proc = runtime.exec(cmds);
InputStream input= proc.getInputStream();
InputStreamReader inputReader = new InputStreamReader(input);
BufferedReader reader = new BufferedReader(inputReader);
String line;
while((line = reader.readLine()) != null){
printer.println(line);
}
}catch(Exception ex){
ex.printStackTrace();
}
}
Forte abraço a todos.