Windows printerqueue mit Java löschen

Diskutiere Windows printerqueue mit Java löschen im Java Basics - Anfänger-Themen Bereich.
S

Selmau

Hallo Zusammen


Ich muss in einem Programm die Druckwarteschlange von Windows löschen, dafür suche ich eine Möglichkeit, dies über Java
zu tun. Im Internet habe ich gelesen, dass dies über das cmd auch möglich ist. Jedoch muss man dafür das cmd als Administrator ausführen.

Ich habe nun meinen Code folgendermassen aufgebaut:
Code:
 try {
                    Process exec = Runtime.getRuntime().exec("cmd.exe net stop spooler");
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                
            
                try {
                    Runtime.getRuntime().exec("cmd.exe del %systemroot%\\System32\\spool\\printers\\* /Q");
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                //Runtime.getRuntime().exec("cmd.exe del /f %SystemRoot%/System32/spool/printers/*.* /q");
                try {
                    Runtime.getRuntime().exec("cmd.exe net start spooler");
                } catch (IOException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
Das Problem ist, dass ich keine Fehlermeldung auf der Konsole erhalte und nicht weiss, wieso es nicht funktioniert. Manuel im cmd funktioniert es.

Hat jemand eine Idee was am Syntax oder sonst falsch sein könnte


Gruss Selmau
 
looparda

looparda

Vermutlich ein Rechteproblem. Logg doch mal den Ausgabenstream/Errorstream des Prozesses.
Java:
String cmd = "cmd.exe /c dir";
InputStream stdin = Runtime.getRuntime().exec(cmd).getInputStream();
InputStreamReader isr = new InputStreamReader(stdin);
BufferedReader br = new BufferedReader(isr);
StringBuilder sb = new StringBuilder();
String s;
while ((s = br.readLine()) != null) {
    sb.append(s).append("\n");
}
System.out.println(sb.toString());
 
M

Meniskusschaden

Zu dem Thema hatten wir hier vor einiger Zeit schon mal einen Thread. Vielleicht hilft das weiter.
 
Thema: 

Windows printerqueue mit Java löschen

Passende Stellenanzeigen aus deiner Region:
Anzeige

Neue Themen

Anzeige

Anzeige
Oben