Active Directoryからすべてのユーザーを取得するためにLDAPクエリを使用してADODB recordset.open()コマンドを実行しています。レコードが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を使用していない理由は、それがだからこそ遅いです。
ワンそれらはOLEDBを参照するように見えますが、これは私が切り替える必要があるかもしれません...もう一つは悲しいことにオプションではないレジストリのようです。 – ChristianLinnell