/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Hjælp: getRuntime().exec() problemer
Fra : PT


Dato : 04-02-01 12:30

Jeg prøver at skrive et program som en frontend til et commandline
program(aacenc.exe), følgende programstump BURDE starte filen:
----------------------------------------------------
import java.lang.System;
import java.lang.Runtime;
import java.io.*;

public class Test {
public static void main(String args[]) throws IOException {
Runtime r = Runtime.getRuntime();
Process p = null;

try {
p = r.exec("C:\\AAC\\aacenc.exe -if test.wav -br 200"); }
catch (Exception e) {System.out.println("Fejl!!"); }
}
}
-----------------------------------------------------
Men faktisk sker der overhovedet ikke noget(java Test giver ingen fejl,
kommandoprompten kommer bare frem igen)selvom den præcis samme kommando
starter aacenc.exe fint fra commandprompten. Hvis jeg erstatter aacenc.exe
med feks edit.com eller et vilkårligt Windows program starter det
upåklageligt(også med brug af commandline parametre(feks "edit.com
test.java").
Jeg kan bare ikke starte programmer som feks chkdsk.exe, copy, dir,
aacenc.exe eller nogen andre command prompt programmer.
Det bliver en meget dårlig frontend hvis den ikke engang kan starte
programmet!



 
 
Martin Moller Peders~ (04-02-2001)
Kommentar
Fra : Martin Moller Peders~


Dato : 04-02-01 17:07

In <95jfs6$a3s$1@news.inet.tele.dk> "PT" <hans.w.rasmussen@mail.dk> writes:

>Jeg prøver at skrive et program som en frontend til et commandline
>program(aacenc.exe), følgende programstump BURDE starte filen:
>----------------------------------------------------
>import java.lang.System;
>import java.lang.Runtime;
>import java.io.*;

>public class Test {
> public static void main(String args[]) throws IOException {
> Runtime r = Runtime.getRuntime();
> Process p = null;

> try {
> p = r.exec("C:\\AAC\\aacenc.exe -if test.wav -br 200"); }
> catch (Exception e) {System.out.println("Fejl!!"); }
> }
>}

..exe programmer skal vistnok koeres under en command.com modsat .com
programmer.

Proev noget a la r.exec("command.com /c c:\\aac\aacenc.exe");

Mvh
Martin

Morten Jensen (05-02-2001)
Kommentar
Fra : Morten Jensen


Dato : 05-02-01 10:38

PT wrote:

> Jeg prøver at skrive et program som en frontend til et commandline
> program(aacenc.exe), følgende programstump BURDE starte filen:
[snip - kode]

> Men faktisk sker der overhovedet ikke noget(java Test giver ingen fejl,

Prøv at bruge waitFor metoden på Process. Jeg tror det der sker er, at
efter at den eksterne process er startet, så slutter din main, hvilket
medfører Java programmet slutter og tager alle dens underprocess'er med sig.

--
CAPUT A/S Morten Jensen Phone +45 70 12 24 42
Nygade 6 Senior Developer Fax +45 70 11 24 42
DK-1164 Kbh K jensen@caput.com http://www.caput.com


Søg
Reklame
Statistik
Spørgsmål : 177552
Tips : 31968
Nyheder : 719565
Indlæg : 6408847
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste