2010-06-04 4 views

ответ

17
String shutdownCmd = "shutdown -s" 
Process child = Runtime.getRuntime().exec(shutdownCmd); 

Более подробную информацию о shutdown command для Вашего удовольствия

Некоторые другие параметры командной строки, которые могут представлять интерес для Вас

-i Дисплей интерфейса графического интерфейса, должен быть первым вариантом

-l Выход из системы (не может использоваться с опцией -m)

-r выключение и перезагрузка компьютера

-m \ имякомпьютера (Удаленный компьютер выключения/перезагрузки/прервать)

- гхх Установить время ожидания завершения работы на хх секунд

-c "комментарий" Shutdown комментарий (максимум 127 символов)


Конечно, если вы предпочитаете не использовать этот метод, есть библиотеки, которые вы можете загрузить для этого. Одним из примеров этого может быть Java Windows Shutdown Functions.

По своей странице SourceForge:

JWSF - Java для Windows Функции Shutdown API позволяет Java приложениям выполнять следующие операции на большинстве окон операционной системы, выключение, перезагрузка, выход из системы, блокировка рабочей станции. JWSF выполняет собственные вызовы с использованием JNI. JWSF подлежит лицензии LGPL

3

Запустить команду «shutdown -s».

Edit: Что-то вроде этого:

Process p = Runtime.getRuntime().exec("shutdown -s"); 
3

Это также можно сделать с помощью WMI, например, с помощью JACOB:

import java.util.Enumeration; 

import com.jacob.activeX.ActiveXComponent; 
import com.jacob.com.ComThread; 
import com.jacob.com.EnumVariant; 
import com.jacob.com.Variant; 

public abstract class Shutdown { 

    public static void main(String[] args) { 
     ComThread.InitMTA(); 
     try { 
      ActiveXComponent wmi = new ActiveXComponent("winmgmts:{impersonationLevel=impersonate,(Shutdown)}!\\\\."); 
      Variant instances = wmi.invoke("InstancesOf", "Win32_OperatingSystem"); 
      Enumeration<Variant> en = new EnumVariant(instances.getDispatch()); 
      ActiveXComponent os = 
       new ActiveXComponent(en.nextElement().getDispatch()); 
      os.invoke("Win32Shutdown", 1, 0); 
     } finally { 
      ComThread.Release(); 
     } 
    } 

} 
1

Если вы хотите выключить его в определенное время добавить параметр -t (в секундах) ,

В течение пяти секунд:

String shutdownCmd = "shutdown -s -t5"; 
Смежные вопросы