C#获取域用户列表.doc_第1页
C#获取域用户列表.doc_第2页
C#获取域用户列表.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

private string RunCmd(string command) /實例一個Process類,啟動一個獨立進程 Process p = new Process(); /Process類有一個StartInfo屬性,這個是ProcessStartInfo類,包括了一些屬性和方法,下面我們用到了他的幾個屬性: p.StartInfo.FileName = cmd.exe; /設定程序名 p.StartInfo.Arguments = /c + command; /設定程式執行參數 p.StartInfo.UseShellExecute = false; /關閉Shell的使用 p.StartInfo.RedirectStandardInput = true; /重定向標準輸入 p.StartInfo.RedirectStandardOutput = true; /重定向標準輸出 p.StartInfo.RedirectStandardError = true; /重定向錯誤輸出 p.StartInfo.CreateNoWindow = true; /設置不顯示窗口 p.Start(); /啟動 /p.StandardInput.WriteLine(command); /也可以用這種方式輸入要執行的命令 /p.StandardInput.WriteLine(exit); /不過要記得加上Exit要不然下一行程式執行的時候會當機 return p.StandardOutput.ReadToEnd(); /從輸出流取得命令執行結果private static SearchResultCollection _ADHelper(string domainADsPath, string username, string password, string schemaClassNameToSearch) DirectorySearcher searcher = new DirectorySearcher(); searcher.SearchRoot = new DirectoryEntry(domainADsPath,username, password); searcher.Filter = (objectClass= + schemaClassNameToSearch + ); searcher.SearchScope = SearchScope.Subtree; searcher.Sort = new SortOption(name,SortDirection.Ascending); / If there is a large set to be return ser page size for a paged search searcher.PageSize = 512; searcher.PropertiesToLoad.AddRange(new string name, Path, displayname, samaccountname, mail ); SearchResultCollection results = searcher.FindAll(); return results;/参数domainADsPath是活动目录的域名,使用类似LDAP:/域名的形式/参数schemaClassNameToSearch是过滤条件,/ objectClass=user 查询条件是所有的用户(USER) public GetUserList() public string ListUsers() string path = LDAP:/IP/CN=Users,DC=idm,DC=gad,DC=nec,DC=com,DC=cn; / IP:ADIP地址 / DC:域例如 ,cn 可以写为 DC=sina,DC=com,DC=cn / CN:数据对象 指定要获取的内容 return ListUsers(path); public string ListUsers(string path) try DirectoryEntry entry = new DirectoryEntry(path); DirectorySearcher searcher = new DirectorySearcher(entry); searcher.Filter = (objectClass=*); searcher.PropertiesToLoad.Clear(); SearchResultCollection searchResultCollection = searcher.FindAll(); return VisitSearchResultCollection(searchResultCollection); catch (Exception ex) log.Debug(ex.Message); return new string 0; /string messageFormat = key:0 value:1 desc:; public void VisitSearchResultCollection(SearchResultCollection resultCollection) IList userList = new List(); foreach(SearchResult result in resultCollection) string userName; string displayName; if (result.Properties.Contains(samaccountname) ResultPropertyValueCollection resultValue = result.Propertiessamaccountname; if(resultValue!= null & resultValue.Count 0 & resultValue0 != null ) userName = resultValue0.ToString(); if (result.Properties.Contains(displayname) ResultPropertyValueCollection resultValue = result.Propertiesdisplayname; if(resultValue!= null & resultValue.Cou

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论