Réponse acceptée !
salut....
avec WMI je liste mes types de comptes :
' [WMI Win32 Helper -
Win32_SystemAccount]
On Local Error Resume Next
Dim sComputerName as String, WMI_Obj as Object, WMI_ObjProps as Object, ObjClsItem as Object
sComputerName = Environ$("COMPUTERNAME")
Set WMI_Obj = GetObject("winmgmts:\\" & sComputerName & "\root\cimv2")
Set WMI_ObjProps = WMI_Obj.ExecQuery("SELECT * FROM Win32_SystemAccount", , 48)
For Each ObjClsItem in WMI_ObjProps
Debug.Print "Caption : " & ObjClsItem.Caption
Debug.Print "Description :
" & ObjClsItem.Description
Debug.Print "Domain : " & ObjClsItem.Domain
Debug.Print "InstallDate :
" & ObjClsItem.InstallDate
Debug.Print "LocalAccount :
" & ObjClsItem.LocalAccount
Debug.Print "Name : " & ObjClsItem.Name
Debug.Print "SID : " & ObjClsItem.SID
Debug.Print "SIDType : " & ObjClsItem.SIDType
Debug.Print "Status : " & ObjClsItem.Status
Next ObjClsItem
Set ObjClsItem = Nothing
Set WMI_ObjProps = Nothing
Set WMI_Obj = Nothingc'est bien le nom de mon PC (pas mon compte) qui apparaît dans les groupes TACHE, SERVICE et SYSTEM
ensuite je liste mes services avec leurs "auteurs" on va dire :
' [WMI Win32 Helper -
Win32_SystemServices]
On Local Error Resume Next
Dim sComputerName as String, WMI_Obj as Object, WMI_ObjProps as Object, ObjClsItem as Object
sComputerName = Environ$("COMPUTERNAME")
Set WMI_Obj = GetObject("winmgmts:\\" & sComputerName & "\root\cimv2")
Set WMI_ObjProps = WMI_Obj.ExecQuery("SELECT * FROM Win32_SystemServices", , 48)
For Each ObjClsItem in WMI_ObjProps
Debug.Print "GroupComponent :
" & ObjClsItem.GroupComponent
Debug.Print "PartComponent :
" & ObjClsItem.PartComponent
Next ObjClsItem
Set ObjClsItem = Nothing
Set WMI_ObjProps = Nothing
Set WMI_Obj = Nothingle nom correspond (PC)
enfin je vérifie tous mes services :
' [WMI Win32 Helper - Win32_Service]
On Local Error Resume Next
Dim sComputerName as String, WMI_Obj as Object, WMI_ObjProps as Object, ObjClsItem as Object
sComputerName = Environ$("COMPUTERNAME")
Set WMI_Obj = GetObject("winmgmts:\\" & sComputerName & "\root\cimv2")
Set WMI_ObjProps = WMI_Obj.ExecQuery("SELECT * FROM Win32_Service", , 48)
For Each ObjClsItem in WMI_ObjProps
Debug.Print "AcceptPause :
" & ObjClsItem.AcceptPause
Debug.Print "AcceptStop :
" & ObjClsItem.AcceptStop
Debug.Print "Caption : " & ObjClsItem.Caption
Debug.Print "CheckPoint :
" & ObjClsItem.CheckPoint
Debug.Print "CreationClassName :
" & ObjClsItem.CreationClassName
Debug.Print "Description :
" & ObjClsItem.Description
Debug.Print "DesktopInteract :
" & ObjClsItem.DesktopInteract
Debug.Print "DisplayName :
" & ObjClsItem.DisplayName
Debug.Print "ErrorControl :
" & ObjClsItem.ErrorControl
Debug.Print "ExitCode : " & ObjClsItem.ExitCode
Debug.Print "InstallDate :
" & ObjClsItem.InstallDate
Debug.Print "Name : " & ObjClsItem.Name
Debug.Print "PathName : " & ObjClsItem.PathName
Debug.Print "ProcessId : " & ObjClsItem.ProcessId
Debug.Print "ServiceSpecificExitCode :
" & ObjClsItem.ServiceSpecificExitCode
Debug.Print "ServiceType :
" & ObjClsItem.ServiceType
Debug.Print "Started : " & ObjClsItem.Started
Debug.Print "StartMode : " & ObjClsItem.StartMode
Debug.Print "StartName : " & ObjClsItem.StartName
Debug.Print "State : " & ObjClsItem.State
Debug.Print "Status : " & ObjClsItem.Status
Debug.Print "SystemCreationClassName :
" & ObjClsItem.SystemCreationClassName
Debug.Print "SystemName :
" & ObjClsItem.SystemName
Debug.Print "TagId : " & ObjClsItem.TagId
Debug.Print "WaitHint : " & ObjClsItem.WaitHint
Next ObjClsItem
Set ObjClsItem = Nothing
Set WMI_ObjProps = Nothing
Set WMI_Obj = Nothingc'est toujours le nom du PC...
bref, çà devrait te servir de piste de départ ;)
pour d'infos sur le WMI ici++
PCPT [AFCK]
Prenez un instant pour répondre à ce sondage svp 