Resolvent for Error When Searching Active Directory Using OleDB
Topic: DB_E_NOTABLE(0x80040E37)
Description: Mario Rodriguez 's trouble: http://www.thescripts.com/forum/thread110472.html (searched by google)
Explain: Cannot find the table "LDAP://DC=domain name, DC=COM".
Resolvent: Append the AD server's name to the LDAP Path. such as "LDAP://ADSrv/DC=MYDOMAIN, DC=COM" or "LDAP://ADSrv.MYDOMAIN.COM".
Code:
1
OleDbConnection activeConn = new OleDbConnection("Provider=ADSDSOObject");
2
string cmdString = "SELECT * FROM 'LDAP://DC=domain name, DC=COM' WHERE objectClass='OU'";
3
OleDbDataAdapter custDA = new OleDbDataAdapter();
4
DataSet dataset = new DataSet();
5
custDA.SelectCommand = new OleDbCommand(cmdString, activeConn);
6
try
7
{
8
custDA.Fill(dataset, "OU");
9
}
10
catch(Exception e)
11
{
12
Console.WriteLine("Exception while filling the dataset: "+e);
13
}
OleDbConnection activeConn = new OleDbConnection("Provider=ADSDSOObject");2
string cmdString = "SELECT * FROM 'LDAP://DC=domain name, DC=COM' WHERE objectClass='OU'";3
OleDbDataAdapter custDA = new OleDbDataAdapter();4
DataSet dataset = new DataSet();5
custDA.SelectCommand = new OleDbCommand(cmdString, activeConn);6
try7
{8
custDA.Fill(dataset, "OU");9
}10
catch(Exception e)11
{12
Console.WriteLine("Exception while filling the dataset: "+e);13
}Code after Modify:
1
OleDbConnection activeConn = new OleDbConnection("Provider=ADSDSOObject");
2
string cmdString = "SELECT * FROM 'LDAP://ADSrv/DC=domain name, DC=COM' WHERE objectClass='OU'";
3
OleDbDataAdapter custDA = new OleDbDataAdapter();
4
DataSet dataset = new DataSet();
5
custDA.SelectCommand = new OleDbCommand(cmdString, activeConn);
6
try
7
{
8
custDA.Fill(dataset, "OU");
9
}
10
catch(Exception e)
11
{
12
Console.WriteLine("Exception while filling the dataset: "+e);
13
}
OleDbConnection activeConn = new OleDbConnection("Provider=ADSDSOObject");2
string cmdString = "SELECT * FROM 'LDAP://ADSrv/DC=domain name, DC=COM' WHERE objectClass='OU'";3
OleDbDataAdapter custDA = new OleDbDataAdapter();4
DataSet dataset = new DataSet();5
custDA.SelectCommand = new OleDbCommand(cmdString, activeConn);6
try7
{8
custDA.Fill(dataset, "OU");9
}10
catch(Exception e)11
{12
Console.WriteLine("Exception while filling the dataset: "+e);13
}


浙公网安备 33010602011771号