none
如何取得本機使用者帳戶、群組及到期日資訊? RRS feed

  • 問題

  • 因為要通知使用者到期資訊&使用者所屬群組資訊給相關人員,所以用下列兩個陣列做比對列出帳戶的資訊,但在本機群組中有增加domain帳戶,與本機帳戶名稱相同,所以會同時顯示兩筆資料,而且GUEST帳戶都會隨著執行的時間而變更,但Guest明明已經設為停用狀態了,但到期日資訊還是會跟著執行的時間而改變!!試問該如何正確列出本機使用者帳戶&所屬群組&到期日資訊?

    Set colUsers = GetObject("WinNT://" & strComputer & "")
    colUsers.Filter = Array("user")

    Set colGroups = GetObject("WinNT://" & strComputer & "")
    colGroups.Filter = Array("group")

     For Each objaccount In colUsers
       list_fg = "y"
      
        For Each objGroup In colGroups
            For Each objUser in objGroup.Members
    '1>>>>>>>  
       if objGroup.Name <> "Administrators" then
        if objaccount.name = objuser.name then
           if objUser.AccountDisabled Then
           stname = "  停用"
           else
           stname = "      "
           End if
           i = 20 - len(objUser.name)
           j = 20 - len(objGroup.Name)
           if list_fg = "y" then
            wlinedata = objUser.name & space(i) & objGroup.Name & space(j) & objuser.passwordExpirationDate & stname
            list_fg = " "
           else
           wlinedata = space(i + len(objUser.name)) & objGroup.Name
           end if
        
           myFile.WriteLine wlinedata
        end if
       end if
    '1<<<<<<<<       
            Next
        Next
     
    Next
    '<<<<<<<<<

    '顯示的格式
    AccountName_A   GroupA      passwordExpirationDate
                              GroupB
    AccountName_B   GroupA      passwordExpirationDate

    2011年1月31日 下午 01:29