Domanda

Voglio aprire un altro programma che non è nel percorso di Windows. Di seguito sono riportati il codice per aprire Blocco note che è nel percorso di Windows.

Process process = Runtime.getRuntime().exec( "cmd.exe /C start notepad" ); 
.

E voglio aprire un file EXE dal percorso sottostante:

C:\Users\midi\Documents\Downloads\Compressed\ARToolKit-2.72.1-bin-win32\ARToolKit\bin 
.

per favore aiutami. Grazie in anticipo

È stato utile?

Soluzione

Supponendo che l'eseguibile sia chiamato "eseguibile.exe" dovrebbe essere semplicemente

Process process = Runtime.getRuntime().exec("cmd.exe /C start C:\\Users\\midi\Documents\\Downloads\\Compressed\\ARToolKit-2.72.1-bin-win32\\ARToolKit\\bin\\Executable.exe" );
.

Se è una decisione saggia di hardcode il percorso assoluto è un'altra domanda.

Altri suggerimenti

Hai il codice per eseguire gli eseguibili proprio lì.Tutto quello che devi fare è sfuggire alle barrette nel sentiero.

Process process = Runtime.getRuntime().exec("C:\\Users\\midi\\Documents\\Downloads\\Compressed\\ARToolKit-2.72.1-bin-win32\\ARToolKit\\bin");
.

Se nulla funziona a creare un file batch usando Blocco note e rinominarlo a Somename.bat. Per la tua domanda dovrebbe essere come di seguito;

@echo on
cd C:\Users\midi\Documents\Downloads\Compressed\ARToolKit-2.72.1-bin-win32\ARToolKit\bin 
run cnext
.

Quindi supporre che il file BAT sia sul desktop Includi il codice seguente dietro il pulsante Fare clic su Ascoltatore.

  try {
                Process pr=Runtime.getRuntime().exec("cmd /c start C:\\Users\\Labuser\\Desktop\\someName.bat");
            } catch (IOException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top