簡體   English   中英

使用Java關閉Windows

[英]Shutdown Windows with Java

是否可以使用Java以編程方式關閉Windows?

干杯

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

有關shutdown命令的更多信息,以供您欣賞

您可能會感興趣的其他一些命令行選項是

-i顯示GUI界面,必須是第一個選項

-l注銷(不能與-m選項一起使用)

-r關閉並重新啟動計算機

-m \\計算機名(將計算機遠程關閉/重新啟動/中止)

-t xx將關機超時設置為xx秒

-c“注釋”關閉注釋(最多127個字符)


當然,如果您不想使用此方法,則可以下載一些庫來實現此目的。 Java Windows Shutdown Functions就是一個例子。

根據他們的SourceForge頁面:

JWSF-Java Windows關閉功能API允許Java應用程序在大多數Windows操作系統上執行以下操作,關閉,重新啟動,注銷,鎖定工作站。 JWSF使用JNI進行本地調用。 JWSF受LGPL許可證的約束

運行命令“ shutdown -s”。

編輯:像這樣:

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

這也可以使用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();
        }
    }

}

如果要在特定時間內關閉它,請附加-t參數(以秒為單位)。

五秒鍾:

String shutdownCmd = "shutdown -s -t5";

親愛的

-是否可以使用java關閉遠程 PC?-如果可以執行此操作,我們可以使用Scanner方法或Text-field通過變量插入計算機名稱。 任何人都可以通過寫正確的代碼來幫助我,就像我喜歡通過以下命令關閉或重新啟動PC的戰爭一樣

字符串shutdownCmd =“ shutdown -s”子進程= Runtime.getRuntime()。exec(shutdownCmd);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM