ilp4zz0 ha scritto:
Ok, quindi se ho capito bene potrei interagire p.e. con il prompt di windows per cercare altri processi attivi e individuare la finestra interessata?
Allora lo ripeto: con il solo framework standard di Java (Java SE, Standard Edition),
non c'è una API per poter "enumerare" ed ottenere informazioni sulle finestre di
altri processi esterni alla applicazione Java. Perché è un concetto altamente system-dependent e non c'è quindi una API standard in generale in Java.
Si può usare JNI per invocare funzioni "native" del S.O. Ma questo richiede di sporcarsi (molto) le mani con C/C++, con le API native (es. Win32 API) e con la creazione di una DLL che deve rispettare le specifiche di JNI. Richiede solidissime basi di C/C++ e del contesto in cui si opera (es. le API di Windows).
Oppure si cerca e si usa una libreria Java che ha una parte in JNI per cui qualcuno si è già "sporcato le mani" con le API del sistema ben prima di te.
In alternativa si usa la JNA (
https://github.com/java-native-access/jn) che fa già da ponte verso funzioni native, senza necessità di scrivere DLL (ma devi comunque conoscere il contesto nativo).
ilp4zz0 ha scritto:
c'è un modo, magari con JNI o librerie apposite, per individuare i processi attivi
Da Java 9/JDK 9 non ce n'è bisogno perché è stata introdotta la nuova Process API. Prima di Java 9 si doveva lanciare un eseguibile esterno (un "task list" del SO o altro), catturarne l'output ed estrapolarne i risultati (non bello/non facile).
ilp4zz0 ha scritto:
ed estrapolare il contenuto di file temporanei creati dal processo stesso?
Cosa faccia e con quale logica un programma in generale non si può dire. Sapere quali sono gli "handle" aperti sul file-system in un certo momento, sì ma idem come sopra, solo con API native.
ilp4zz0 ha scritto:
Cioè per fare un esempio concreto.. ho un programma che dopo un pò di operazioni mi restituisce un file di log da cui posso estrapolare le informazioni che mi interessano, ma se volessi leggere queste informazioni in tempo reale?
Se sai a priori il percorso al file, no prob, è immediato. Se non lo sai ..... è un altro discorso.