Statistiche |
- Views Home Page: 159.203
- Views Posts: 377.167
- Views Gallerie: 778.678
- n° Posts: 210
- n° Commenti: 148
|
Archivio Posts |
Anno 2010
Anno 2009
Anno 2008
Anno 2007
Anno 2006
Anno 2005
|
|
Recuperare tutti gli account di sistema con relative info
Per ottenere tutti gli account presenti nel sistema con relative informazioni basta semplicemente far ricorso, ancora una volta, a WMI.
Esemio in C#.
using System.Management;
//Questa funzione recupera tutti gli account presenti nel sistema e restituisce una lista contenente i nomi degli account. public List<string> GetUsers() { List<string> users = null; ManagementObjectSearcher searcher = null;
try { users = new List<string>(); //Istanziamo un oggetto ManagementObjectSearcher passandogli la query di ricerca searcher =new ManagementObjectSearcher("root\\CIMV2","SELECT * FROM Win32_UserAccount");
//Per ogni oggetto ManagementObject trovato dal searcher ne recuperiamo il nome e lo inseriamo nella lista. foreach (ManagementObject queryObj in searcher.Get()) { users.Add(queryObj["Name"].ToString()); } } catch (ManagementException e) { System.Diagnostics.Debug.Write(e.Message); }
//Prima di ritornare la lista ricordiamoci di distruggere il searcher che è ormai inutile searcher.Dispose(); return users; }
//Questa funzione recupera le informazioni relative ad un account il cui nome viene passato come parametro. public List<string> GetUserInfo(string name) { ManagementObjectSearcher searcher = null; List<string> info = null;
try { //Anche in questo caso viene istanziato un oggetto ManagementObjectSearcher con una query specifica ad determinato account. searcher = new ManagementObjectSearcher("root\\CIMV2","SELECT * FROM Win32_UserAccount WHERE Name = '" + name + "'");
info = new List<string>();
//Per ogni oggetto ManagementObject trovato dal searcher ne recuperiamo le info e le inseriamo nella lista. foreach (ManagementObject queryObj in searcher.Get()) { info.Add(queryObj["Name"].ToString()); info.Add(queryObj["Description"].ToString()); info.Add(queryObj["Domain"].ToString()); info.Add(queryObj["Disabled"].ToString()); info.Add(queryObj["PasswordExpires"].ToString()); info.Add(queryObj["LocalAccount"].ToString()); info.Add(queryObj["Lockout"].ToString()); info.Add(queryObj["Status"].ToString()); } } catch (ManagementException e) { System.Diagnostics.Debug.Write(e.Message); }
//Prima di ritornare la lista ricordiamoci di distruggere il searcher che è ormai inutile searcher.Dispose(); return info; }
mercoledì, 02 ago 2006 Ore. 20.27
|
Calendario |
| l | m | m | g | v | s | d |
---|
27 | 28 | 29 | 30 | 31 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
|
|