2010-02-11 6 views

risposta

6

Si potrebbe utilizzare System.exec per lanciare regedit yourfile.reg

Ecco come si fa:

String[] cmd = {"regedit", "yourfile.reg"}; 
Process p = Runtime.exec(cmd); 
p.waitFor(); 

ultima riga è opzionale, consente solo di aspettare fino a quando l'operazione non è al di sopra di.

+0

@Valentin Rocher Valeu, mano. Muito Obrigado! –

6

Se siete già in Java 1.6, basta afferrare java.awt.Desktop:

Desktop.getDesktop().open(new File("c:/yourfile.reg")); 

che lancerà il file utilizzando l'applicazione predefinita ad esso associati, come se si sta doppio clic il file particolare in Esplora risorse.

0

Questo può essere ottenuto tramite Process Builder in JAVA. Si prega di considerare il seguente esempio di questo:

ProcessBuilder processBuilder = new ProcessBuilder("regedit", "reg_file_to_run.reg"); 
Process processToExecute = processBuilder.start(); 

E poi si può opzionalmente attendere il completamento del processo di esecuzione con questa linea:

processToExecute.waitFor(); 

Nota: Se comando nel file di registro chiede messaggi di conferma durante le modifiche apportate alle voci di registro, è possibile eseguirli silenziosamente anche con l'opzione '/ s'. In questo modo:

ProcessBuilder processBuilder = new ProcessBuilder("regedit", "/s", "reg_file_to_run.reg"); 

Con questo comando sarebbe eseguito silenziosamente senza alcun prompt di conferma.