2009-06-29 256 views
6

我正在使用LDAP查詢執行ADODB recordset.open()命令,以從我的Active Directory獲取所有用戶。記錄集只返回1000條記錄

約有2600個用戶,但我只能找回1000個用戶。

我試過改變記錄集的PageSize和MaxRecords屬性,沒有運氣。

沒有多餘的東西,這是代碼的樣子(我做了連接的詳細信息通用):

ADODB.Connection conn = new ADODB.Connection(); 
ADODB.Recordset rs = new ADODB.Recordset(); 
rs.MaxRecords = 10000; 
rs.PageSize = 10000; 
conn.Open("Active Directory Provider","","",0); 
string query = "SELECT cn FROM 'LDAP://OU=User Accounts,OU=TopLevel,DC=domainName,DC=local' where samAccountName = '*'" 

rs.Open(query, conn, ADODB.CursorTypeEnum.adOpenKeyset, ADODB.LockTypeEnum.adLockOptimistic, -1); 

這肯定只能返回1000條記錄,(我已經證實),我可以訪問他們就好了。

萬一它有幫助,我不使用DirectorySearcher的原因是因爲它是如此緩慢與此相比。

回答

2

1000極限討論here - 本質上,它是固定在服務器上,所以你會需要跟主人...

+0

我敢肯定你可以從查詢中設置它 - 我已經使用VBScript和command.Execute之前完成了它。這只是我無法得到的工作。 – ChristianLinnell 2009-06-29 04:34:59