runas 指令可指定帳號執行需要的程式,將 runas 寫成自動輸入密碼的 vbscript 批次檔形式方式
例:利用 vbscript 來完成關機的動作;
新增一個 shutdown.vbs 的文字檔,文字檔內容如下:
set WshShell = CreateObject("WScript.Shell")
WshShell.Run "runas /user:%computername%\administrator ""C:\WINDOWS\system32\shutdown.exe -s -f -t 02"""
WScript.Sleep 1000
WshShell.Sendkeys "
帳號密碼 ~"
表示我要使用 本機電腦名稱\administrator 的這個帳號,
去執行 C:\WINDOWS\system32\shutdown.exe -s -f -t 02 (在兩秒後強制電腦關機)
WshShell.Sendkeys "
帳號密碼 ~"中的
帳號密碼 是 administrator 的密碼,~ 表示carriage return。
若不希望 user 打開 vbs 的看到其中的內容,可以至微軟官網下載 script encoder 將其加密為.vbe
先將上述檔案內容改成如下:
'**Start Encode**
set WshShell = CreateObject("WScript.Shell")
WshShell.Run "runas /user:%computername%\administrator ""C:\WINDOWS\system32\shutdown.exe -s -f -t 02"""
WScript.Sleep 1000
WshShell.Sendkeys "帳號密碼~"
接著將完成的 shutdown.vbs 放在在 screnc.exe 的所在目錄下,並在此執行以下指令
screnc /l vbscript shutdown.vbs shutdown.vbe
接著給予與 user 加密過的 shutdown.vbe 執行即可!
參考來源:http://alexchuo.blogspot.tw/2005/02/runas.html
這個好,不過還是有一些問題需要完善,比如窗口移到後臺,多個實例等等.
回覆刪除