{"id":693,"date":"2025-10-28T17:48:47","date_gmt":"2025-10-28T16:48:47","guid":{"rendered":"https:\/\/www.silverice.it\/IpercubeTechWP1\/?page_id=693"},"modified":"2025-10-28T20:26:10","modified_gmt":"2025-10-28T19:26:10","slug":"ldgetallgroupusers","status":"publish","type":"page","link":"https:\/\/www.silverice.it\/IpercubeTechWP1\/ipercube-utilities\/ldap-functions\/ldgetallgroupusers\/","title":{"rendered":"Get All Group Users"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Queries the LDAP server to get all user members of a specific group, even if there are more than 1000 results. The <strong>max number of entry returned must be increased on the LDAP server<\/strong> otherwise always 1000 entries are returned.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Uses LDAP paging with LdapConnection.<\/p>\n\n\n\n<div class=\"wp-block-group\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:75%\">\n<div class=\"wp-block-columns is-layout-flex wp-container-core-columns-is-layout-8f761849 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column page-snippet is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:100%\">\n<div class=\"wp-block-kevinbatdorf-code-block-pro cbp-has-line-numbers\" data-code-block-pro-font-family=\"Code-Pro-Geist-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-Geist-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;--cbp-line-number-color:#D4D4D4;--cbp-line-number-width:calc(2 * 0.6 * .875rem);line-height:1.25rem;--cbp-tab-width:2;tab-size:var(--cbp-tab-width, 2)\"><span style=\"display:flex;align-items:center;padding:10px 0px 10px 16px;margin-bottom:-2px;width:100%;text-align:left;background-color:#2b2b2b;color:#c7c7c7\">VB<\/span><span role=\"button\" tabindex=\"0\" style=\"color:#D4D4D4;display:none\" aria-label=\"Copy\" class=\"code-block-pro-copy-button\"><pre class=\"code-block-pro-copy-button-pre\" aria-hidden=\"true\"><textarea class=\"code-block-pro-copy-button-textarea\" tabindex=\"-1\" aria-hidden=\"true\" readonly>    Public Function ldGetAllGroupUsers(groupDN As String, \n                                       serverPort As String, \n                                       domain As String, \n                                       username As String, \n                                       password As String) As List(Of SearchResultEntry)\n        \n        Dim userList As New List(Of SearchResultEntry)()\n\n        ' Validate inputs\n        If String.IsNullOrEmpty(groupDN) OrElse String.IsNullOrEmpty(serverPort) OrElse String.IsNullOrEmpty(domain) OrElse String.IsNullOrEmpty(username) OrElse String.IsNullOrEmpty(password) Then\n            Throw New ArgumentException(\"All parameters must be provided and not empty.\")\n        End If\n\n        ' Prepare LDAP connection\n        Dim ldapConnection As New LdapConnection(New LdapDirectoryIdentifier(serverPort))\n        ldapConnection.AuthType = AuthType.Basic\n        ldapConnection.SessionOptions.ProtocolVersion = 3\n        Dim credential As New NetworkCredential(username, password)\n\n        ' Bind to LDAP server\n        Try\n            ldapConnection.Bind(credential)\n        Catch ex As Exception\n            Throw New Exception(\"LDAP bind error: \" &amp; ex.Message)\n        End Try\n\n        ' LDAP filter: direct members of the group only\n        Dim filter As String = \"(&amp;(objectClass=user)(memberOf=\" &amp; groupDN &amp; \"))\"\n        Dim attributes() As String = {} ' Load all attributes\n\n        ' Prepare the page request control\n        Dim pageSize As Integer = 1000\n        Dim pageRequestControl As New PageResultRequestControl(pageSize)\n\n        ' Search request\n        Dim searchRequest As New SearchRequest(domain, filter, Protocols.SearchScope.Subtree, attributes)\n        searchRequest.Controls.Add(pageRequestControl)\n\n        Dim morePages As Boolean = True\n\n        While morePages\n            Dim searchResponse As SearchResponse\n\n            Try\n                searchResponse = CType(ldapConnection.SendRequest(searchRequest), SearchResponse)\n            Catch ex As Exception\n                Throw New Exception(\"LDAP search error: \" &amp; ex.Message)\n            End Try\n\n            ' Process search results\n            For Each entry As SearchResultEntry In searchResponse.Entries\n                If entry.Attributes.Contains(\"objectClass\") AndAlso entry.Attributes(\"objectClass\").GetValues(GetType(String)).Contains(\"user\") Then\n                    userList.Add(entry)\n                End If\n            Next\n\n            ' Check for the paging cookie to see if there are more pages\n            morePages = False\n            For Each control As DirectoryControl In searchResponse.Controls\n                If TypeOf control Is PageResultResponseControl Then\n                    Dim pageResponse As PageResultResponseControl = CType(control, PageResultResponseControl)\n                    If pageResponse.Cookie.Length &lt;> 0 Then\n                        ' More data available - continue paging\n                        pageRequestControl.Cookie = pageResponse.Cookie\n                        morePages = True\n                    End If\n                End If\n            Next\n        End While\n\n        ' Done - return all collected user entries\n        Return userList\n    End Function<\/textarea><\/pre><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M4.5 12.75l6 6 9-13.5\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M16.5 8.25V6a2.25 2.25 0 00-2.25-2.25H6A2.25 2.25 0 003.75 6v8.25A2.25 2.25 0 006 16.5h2.25m8.25-8.25H18a2.25 2.25 0 012.25 2.25V18A2.25 2.25 0 0118 20.25h-7.5A2.25 2.25 0 018.25 18v-1.5m8.25-8.25h-6a2.25 2.25 0 00-2.25 2.25v6\"><\/path><\/svg><\/span><pre class=\"shiki dark-plus\" style=\"background-color: #1E1E1E\" tabindex=\"0\"><code><span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #569CD6\">Public Function <\/span><span style=\"color: #DCDCAA\">ldGetAllGroupUsers<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">groupDN<\/span><span style=\"color: #D4D4D4\"> As <\/span><span style=\"color: #4EC9B0\">String<\/span><span style=\"color: #D4D4D4\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                                       serverPort As <\/span><span style=\"color: #4EC9B0\">String<\/span><span style=\"color: #D4D4D4\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                                       domain As <\/span><span style=\"color: #4EC9B0\">String<\/span><span style=\"color: #D4D4D4\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                                       username As <\/span><span style=\"color: #4EC9B0\">String<\/span><span style=\"color: #D4D4D4\">, <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                                       password As <\/span><span style=\"color: #4EC9B0\">String<\/span><span style=\"color: #D4D4D4\">) As <\/span><span style=\"color: #4EC9B0\">List<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">Of<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">SearchResultEntry<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> userList <\/span><span style=\"color: #D4D4D4\">As<\/span><span style=\"color: #569CD6\"> New <\/span><span style=\"color: #DCDCAA\">List<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">Of<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #9CDCFE\">SearchResultEntry<\/span><span style=\"color: #D4D4D4\">)()<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #6A9955\">&#39; Validate inputs<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #C586C0\">If<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #DCDCAA\">String<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">IsNullOrEmpty<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">groupDN<\/span><span style=\"color: #D4D4D4\">) OrElse <\/span><span style=\"color: #DCDCAA\">String<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">IsNullOrEmpty<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">serverPort<\/span><span style=\"color: #D4D4D4\">) OrElse <\/span><span style=\"color: #DCDCAA\">String<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">IsNullOrEmpty<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">domain<\/span><span style=\"color: #D4D4D4\">) OrElse <\/span><span style=\"color: #DCDCAA\">String<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">IsNullOrEmpty<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">username<\/span><span style=\"color: #D4D4D4\">) OrElse <\/span><span style=\"color: #DCDCAA\">String<\/span><span style=\"color: #D4D4D4\">.<\/span><span style=\"color: #DCDCAA\">IsNullOrEmpty<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">password<\/span><span style=\"color: #D4D4D4\">) <\/span><span style=\"color: #C586C0\">Then<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            Throw<\/span><span style=\"color: #569CD6\"> New <\/span><span style=\"color: #DCDCAA\">ArgumentException<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;All parameters must be provided and not empty.&quot;<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #C586C0\">End If<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #6A9955\">&#39; Prepare LDAP connection<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> ldapConnection <\/span><span style=\"color: #D4D4D4\">As<\/span><span style=\"color: #569CD6\"> New <\/span><span style=\"color: #DCDCAA\">LdapConnection<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #569CD6\">New <\/span><span style=\"color: #DCDCAA\">LdapDirectoryIdentifier<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">serverPort<\/span><span style=\"color: #D4D4D4\">))<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        ldapConnection.<\/span><span style=\"color: #9CDCFE\">AuthType<\/span><span style=\"color: #D4D4D4\"> = AuthType.Basic<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        ldapConnection.SessionOptions.<\/span><span style=\"color: #9CDCFE\">ProtocolVersion<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #B5CEA8\">3<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> credential <\/span><span style=\"color: #D4D4D4\">As<\/span><span style=\"color: #569CD6\"> New <\/span><span style=\"color: #DCDCAA\">NetworkCredential<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">username<\/span><span style=\"color: #D4D4D4\">,<\/span><span style=\"color: #9CDCFE\"> password<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #6A9955\">&#39; Bind to LDAP server<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        Try<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            ldapConnection.<\/span><span style=\"color: #DCDCAA\">Bind<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">credential<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        Catch ex As <\/span><span style=\"color: #4EC9B0\">Exception<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            Throw<\/span><span style=\"color: #569CD6\"> New <\/span><span style=\"color: #DCDCAA\">Exception<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;LDAP bind error: &quot;<\/span><span style=\"color: #D4D4D4\"> &amp; ex.<\/span><span style=\"color: #9CDCFE\">Message<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #DCDCAA\">End<\/span><span style=\"color: #D4D4D4\"> Try<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #6A9955\">&#39; LDAP filter: direct members of the group only<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> filter <\/span><span style=\"color: #D4D4D4\">As <\/span><span style=\"color: #4EC9B0\">String<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #CE9178\">&quot;(&amp;(objectClass=user)(memberOf=&quot;<\/span><span style=\"color: #D4D4D4\"> &amp;<\/span><span style=\"color: #9CDCFE\"> groupDN<\/span><span style=\"color: #D4D4D4\"> &amp; <\/span><span style=\"color: #CE9178\">&quot;))&quot;<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> attributes<\/span><span style=\"color: #D4D4D4\">() As <\/span><span style=\"color: #4EC9B0\">String<\/span><span style=\"color: #D4D4D4\"> = {} <\/span><span style=\"color: #6A9955\">&#39; Load all attributes<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #6A9955\">&#39; Prepare the page request control<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> pageSize <\/span><span style=\"color: #D4D4D4\">As <\/span><span style=\"color: #4EC9B0\">Integer<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #B5CEA8\">1000<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> pageRequestControl <\/span><span style=\"color: #D4D4D4\">As<\/span><span style=\"color: #569CD6\"> New <\/span><span style=\"color: #DCDCAA\">PageResultRequestControl<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">pageSize<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #6A9955\">&#39; Search request<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> searchRequest <\/span><span style=\"color: #D4D4D4\">As<\/span><span style=\"color: #569CD6\"> New <\/span><span style=\"color: #DCDCAA\">SearchRequest<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">domain<\/span><span style=\"color: #D4D4D4\">,<\/span><span style=\"color: #9CDCFE\"> filter<\/span><span style=\"color: #D4D4D4\">, Protocols.SearchScope.Subtree,<\/span><span style=\"color: #9CDCFE\"> attributes<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        searchRequest.Controls.<\/span><span style=\"color: #DCDCAA\">Add<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">pageRequestControl<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> morePages <\/span><span style=\"color: #D4D4D4\">As <\/span><span style=\"color: #4EC9B0\">Boolean<\/span><span style=\"color: #D4D4D4\"> =<\/span><span style=\"color: #569CD6\"> True<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #C586C0\">While<\/span><span style=\"color: #D4D4D4\"> morePages<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> searchResponse <\/span><span style=\"color: #D4D4D4\">As <\/span><span style=\"color: #4EC9B0\">SearchResponse<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            Try<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                <\/span><span style=\"color: #9CDCFE\">searchResponse<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #DCDCAA\">CType<\/span><span style=\"color: #D4D4D4\">(ldapConnection.<\/span><span style=\"color: #DCDCAA\">SendRequest<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">searchRequest<\/span><span style=\"color: #D4D4D4\">),<\/span><span style=\"color: #9CDCFE\"> SearchResponse<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            Catch ex As <\/span><span style=\"color: #4EC9B0\">Exception<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                Throw<\/span><span style=\"color: #569CD6\"> New <\/span><span style=\"color: #DCDCAA\">Exception<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;LDAP search error: &quot;<\/span><span style=\"color: #D4D4D4\"> &amp; ex.<\/span><span style=\"color: #9CDCFE\">Message<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #DCDCAA\">End<\/span><span style=\"color: #D4D4D4\"> Try<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #6A9955\">&#39; Process search results<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #C586C0\">For<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">Each<\/span><span style=\"color: #D4D4D4\"> entry As <\/span><span style=\"color: #4EC9B0\">SearchResultEntry<\/span><span style=\"color: #D4D4D4\"> In searchResponse.Entries<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                <\/span><span style=\"color: #C586C0\">If<\/span><span style=\"color: #D4D4D4\"> entry.Attributes.<\/span><span style=\"color: #DCDCAA\">Contains<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;objectClass&quot;<\/span><span style=\"color: #D4D4D4\">) AndAlso entry.<\/span><span style=\"color: #DCDCAA\">Attributes<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;objectClass&quot;<\/span><span style=\"color: #D4D4D4\">).<\/span><span style=\"color: #DCDCAA\">GetValues<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #DCDCAA\">GetType<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #DCDCAA\">String<\/span><span style=\"color: #D4D4D4\">)).<\/span><span style=\"color: #DCDCAA\">Contains<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #CE9178\">&quot;user&quot;<\/span><span style=\"color: #D4D4D4\">) <\/span><span style=\"color: #C586C0\">Then<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                    userList.<\/span><span style=\"color: #DCDCAA\">Add<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">entry<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                <\/span><span style=\"color: #C586C0\">End If<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #C586C0\">Next<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #6A9955\">&#39; Check for the paging cookie to see if there are more pages<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #9CDCFE\">morePages<\/span><span style=\"color: #D4D4D4\"> =<\/span><span style=\"color: #569CD6\"> False<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #C586C0\">For<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">Each<\/span><span style=\"color: #D4D4D4\"> control As <\/span><span style=\"color: #4EC9B0\">DirectoryControl<\/span><span style=\"color: #D4D4D4\"> In searchResponse.Controls<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                <\/span><span style=\"color: #C586C0\">If<\/span><span style=\"color: #D4D4D4\"> TypeOf control Is PageResultResponseControl <\/span><span style=\"color: #C586C0\">Then<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                    <\/span><span style=\"color: #569CD6\">Dim<\/span><span style=\"color: #9CDCFE\"> pageResponse <\/span><span style=\"color: #D4D4D4\">As <\/span><span style=\"color: #4EC9B0\">PageResultResponseControl<\/span><span style=\"color: #D4D4D4\"> = <\/span><span style=\"color: #DCDCAA\">CType<\/span><span style=\"color: #D4D4D4\">(<\/span><span style=\"color: #9CDCFE\">control<\/span><span style=\"color: #D4D4D4\">,<\/span><span style=\"color: #9CDCFE\"> PageResultResponseControl<\/span><span style=\"color: #D4D4D4\">)<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                    <\/span><span style=\"color: #C586C0\">If<\/span><span style=\"color: #D4D4D4\"> pageResponse.Cookie.<\/span><span style=\"color: #9CDCFE\">Length<\/span><span style=\"color: #D4D4D4\"> &lt;&gt; <\/span><span style=\"color: #B5CEA8\">0<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">Then<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                        <\/span><span style=\"color: #6A9955\">&#39; More data available - continue paging<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                        pageRequestControl.<\/span><span style=\"color: #9CDCFE\">Cookie<\/span><span style=\"color: #D4D4D4\"> = pageResponse.Cookie<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                        <\/span><span style=\"color: #9CDCFE\">morePages<\/span><span style=\"color: #D4D4D4\"> =<\/span><span style=\"color: #569CD6\"> True<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                    <\/span><span style=\"color: #C586C0\">End If<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">                <\/span><span style=\"color: #C586C0\">End If<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">            <\/span><span style=\"color: #C586C0\">Next<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #DCDCAA\">End<\/span><span style=\"color: #D4D4D4\"> <\/span><span style=\"color: #C586C0\">While<\/span><\/span>\n<span class=\"line\"><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #6A9955\">&#39; Done - return all collected user entries<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">        <\/span><span style=\"color: #C586C0\">Return<\/span><span style=\"color: #D4D4D4\"> userList<\/span><\/span>\n<span class=\"line\"><span style=\"color: #D4D4D4\">    <\/span><span style=\"color: #569CD6\">End Function<\/span><\/span><\/code><\/pre><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Queries the LDAP server to get all user members of a specific group, even if there are more than 1000 results. The max number of entry returned must be increased on the LDAP server otherwise always 1000 entries are returned. Uses LDAP paging with LdapConnection.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":716,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-693","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/pages\/693","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/comments?post=693"}],"version-history":[{"count":5,"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/pages\/693\/revisions"}],"predecessor-version":[{"id":729,"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/pages\/693\/revisions\/729"}],"up":[{"embeddable":true,"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/pages\/716"}],"wp:attachment":[{"href":"https:\/\/www.silverice.it\/IpercubeTechWP1\/wp-json\/wp\/v2\/media?parent=693"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}