| Цитата(mihryak @ 15.7.2010, 18:28) | вот тебе сгенерённый метод
| Код | ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\\directory\\LDAP", "SELECT * FROM ds_computer");
foreach (ManagementObject queryObj in searcher.Get()) { Console.WriteLine("DS_name: {0}", queryObj["DS_name"]); }
|
и через AD то же самое
| Код | using (Domain domain = Domain.GetCurrentDomain()) using (DirectoryEntry domainEntry = domain.GetDirectoryEntry()) using (DirectorySearcher searcher = new DirectorySearcher(domainEntry, "objectClass=computer", new [] {"Name"})) using (SearchResultCollection resultCollection = searcher.FindAll()) { foreach (SearchResult searchResult in resultCollection) { Console.WriteLine(searchResult.Properties["Name"][0]); } }
|
а вообще, очень не круто создавать одинаковые темы в разных разделах, да ещё и с немного разными условиями прибил бы ты одну из них |
Благодарю за информацию, оба способа у меня работают (правда второй существенно быстрее первого). А можно ли помимо имени компьютера дополнительно сразу извлекать такую информацию как его SID, а так же информацию о его текущем состоянии (включен или выключен)?
Спасибо! |