Shutdown no windows com usuário restrito

8 respostas
schkr4b

Pessoal…
To com o seguinte problema…

String os = System.getProperty(os.name).toUpperCase();

if(os.equals(WINDOWS 2000)){

//Codigo

}else{

Runtime.getRuntime().exec(cmd /c shutdown -s -f -t 0);

}

O seguinte código funciona perfeitamente quando utilizo o windows xp com um usuario com privilegios de admnistrador… Mas quando tento o mesmo codigo com usuario restrito ele nao funciona… Ao tentar executar no promt de comando aparece uma mensagem informando que eu nao tenho permissao para utilizar este comando. Entretando qualquer usuario com privilegio restrito pode desligar a maquina pelo iniciar -> desligar.

Alguem sabe algum comando que funcione tanto para usuarios administradores quanto pra usuarios restritos?

8 Respostas

P

Vê se te ajuda:

public class Shutdown {

  private Shutdown() { }

  private static void runCommand(String file, String params) {
    ParamArray pa = params.split(" ");
    Runtime.exec(file, pa);
  }

  public static void shutdownWinpreXP() {
    runCommand("RUNDLL32.EXE", "user32,ExitWindowsEx");
  }

  public static void shutdownWinXP() {
    runCommand("shutdown.exe", "-s -t 01");
  }

  public static void shutdownWindows() {
    try {
      shutdownWinXP();
    catch (IOException e) {
      shutdownWinpreXP();
    }
  }

  public static void shutdownLinux() {
    runCommand("shutdown", "now");
  }

}
schkr4b

Funciona apenas como usuario administrador…
Como usuario restrito ele nao funciona…
:cry:

Mas vlw ^^

P

Dá uma lida no help do shutdown. Vai te ajudar.

T

Olhe o help do runas

schkr4b

Consegui resolver o problema… mas não usando o shutdown q tem no path…

P

Ué, então poste a solução. =)

schkr4b

eu utilizei outro arquivo de shutdown.exe
Ai o comando do shutdown ficou:

Runtime.getRuntime().exec("cmd /c shutdown -u -t 0");

Soh mudou msm o arquivo de shutdown utilizado… parece q o do windows mesmo ele n permite que o SO seja desligado pelo comando de shutdown…

schkr4b

Opa opa… o comando foi

Runtime.getRuntime().exec(System.getProperty("user.dir") + "\\xml\\shutdown\\shutdown.exe -u -f -t 0");
Criado 9 de julho de 2008
Ultima resposta 11 de jul. de 2008
Respostas 8
Participantes 3