当前位置: 首页 > 编程语言 > C#

如何以编程方式在ActiveDirectory中搜索打印机共享

时间:2023-04-10 21:21:50 C#

如何以编程方式在ActiveDirectory中搜索打印机尝试使用C#在ActiveDirectory中查找打印机/共享。这是我为用户使用的示例代码,但我看不到在哪里可以找到使用相同概念的打印机。(我是ActiveDirectory的新手)。DirectoryEntry条目=newDirectoryEntry();entry.Path="LDAP://xxx.xxx.xx.xx/CN=Printers;DC=domainName,DC=com";entry.Username=@"domainName.comAdministrator";条目.密码=“管理员”;DirectorySearchersearch=newDirectorySearcher(入口);search.Filter="(objectCategory=printQueue)";SearchResult结果=search.FindOne();如果(结果!=null){ResultPropertyCollection字段=结果。特性;foreach(StringldapFieldinfields.PropertyNames){foreach(ObjectmyCollectioninfields[ldapField])Console.WriteLine(String.Format("{0,-20}:{1}",ldapField,myCollection.ToString()));}}任何帮助将不胜感激。与Users(CN=Users)相比,安装后ActiveDirectory中没有CN=Printers容器。打印机在关联的计算机容器中的ActiveDirectory中发布。relatedcomputercontainer是什么意思?那么,打开ActiveDirectory用户和计算机MMC管理单元并按照以下过程操作:在“查看”菜单上选择“高级功能”。在“视图”菜单中选择“用户”、“连续”、“组”和“计算机”作为容器。导航到您的打印机所属的计算机对象(现在显示为容器)。单击计算机容器的加号。在那里您将看到打印机对象。因此,您会看到在ActiveDirectory中发布的打印机在相关的计算机容器(打印机所属的位置)中,而不是在像CN=Printers这样的公共容器中。因此,要在ActiveDirectory中搜索打印机对象,必须指定不同的LDAP路径。例如,您可以指定ActiveDirectory的根作为搜索根:using(DirectoryEntryentry=newDirectoryEntry()){entry.Path="LDAP://xxx.xxx.xxx.xxx/DC=domainName,DC=com”;entry.Username=@"domainName.comAdministrator";entry.Password="安全密码";使用(DirectorySearchersearch=newDirectorySearcher(entry)){search.Filter="(objectCategory=printQueue)";SearchResultresult=search.FindOne();if(result!=null){ResultPropertyCollection字段=result.Properties;foreach(StringldapFieldinfields.PropertyNames){foreach(ObjectmyCollectioninfields[ldapField])Console.WriteLine(String.Format("{0,-20}:{1}",ldapField,myCollection.ToString()));}}}}当然,你也可以将搜索根指定为共享打印机的计算机的LDAP路径。例如,如果您的打印机在名为server10的计算机上共享,并且此计算机位于CN=Computers容器中,请指定此LDAP路径:LDAP://xxx.xxx.xxx.xxx/CN=server10,CN=Computers,DC=domainName,DC=com如果打印机在域控制器上共享,LDAP路径略有不同(因为默认情况下,域控制器计算机对象位于OU=DomainControllers组织单元):上面是C#学习教程:如何在ActiveDirectory中以编程方式搜索打印机共享的所有内容,如果对你有用,需要了解更多C#学习教程,希望大家多多关注—LDAP://xxx.xxx.xxx.xxx/CN=DomainControllerName,OU=DomainControllers,DC=domainName,DC=com本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: