先前討論過使用現成指令的方式來查詢上次登入系統的時間,這次我們改用 .vbs 來查詢,這個 .vbs 有使用限制,不能用在 Windows 2000 以上的 AD 環境中。如果硬要用的話,就需要改用 LDAP。
---程式碼開始---
Option Explicit
On Error Resume Next
' 定義變數
Dim strDomain
Dim WshNetwork
Dim strUsername
Dim oUsr
' 取得網域名稱
Set WshNetwork = WScript.CreateObject("WScript.Network")
If Err.Number <> 0 then
WScript.Echo "無法建立 Network 物件"
WScript.Quit
End if
strDomain = WshNetwork.UserDomain
' 取得登入者帳號
strUsername = WshNetwork.Username
Set oUsr = GetObject("WinNT://" & strDomain & "/" & strUsername & ",user")
WScript.Echo "帳號:" & oUsr.Name
WScript.Echo "上次登入時間是:" & oUsr.LastLogin
---程式碼結束---
使用方式,就是將上面的程式碼複製下來,並存檔成 UsersLastLoginInfo.vbs,然後使用
cscript /nologo UsersLastLoginInfo.vbs
即可查得目前登入的使用者上次登入系統的時間。