System.DirectoryServices in C++ (.NET)

Status
Niet open voor verdere reacties.

escobar98

Nieuwe gebruiker
Lid geworden
10 nov 2006
Berichten
2
Ik probeer via C++ een connectie te maken met de LDAP om aan gebruikersauthenticatie te doen. Ik heb wel weinig tot geen kennis van c++. Ik heb dit eerst geschreven in visual basic .net en daar werkt het perfect. De C++ code compileert perfect, maar bij het uitvoeren geeft ie op deze lijn een error:

DirectoryEntry entry = gcnew DirectoryEntry(sPath, sUserB, sPw, AuthenticationTypes::ServerBind);

error:
"An unhandled exception of type 'System.ArgumentException' occurred in System.DirectoryServices.dll

Additional information: The value provided for adsObject does not implement IADs."

Ik dacht eerst dat de waarden tussen haakjes niet van de juiste types waren, dus heb ik geprobeerd deze weg te laten wat ook zou moeten werken:

DirectoryEntry entry = gcnew DirectoryEntry();

Maar ook hier krijg ik dezelfde foutmelding. Iemand die weet waar het aan kan liggen?
De gebruikte omgeving is MS visual C++ 2005 express edition.


//gebruikte namespace
using namespace System::DirectoryServices;

...

System::String ^sUserB = "cn=";
System::String ^sUser = gcnew System::String(txtUser->Text);
sUserB = sUserB + sUser + ", ou=users, o=bedrijf";
System::String ^sPw = gcnew System::String(txtPas->Text);
System::String ^sPath = gcnew System::String("LDAP://10.0.0.128");
DirectoryEntry entry = gcnew DirectoryEntry(sPath, sUserB, sPw, AuthenticationTypes::ServerBind);
try {
entry.NativeObject;
entry.Close();
label1->Text = "Gelukt!";
}
catch(char * str){
entry.Close();
label1->Text = "mislukt";
}
 
Ik heb geen idee wat die regel zou moeten doen, maar waar de compiler je voor waarschuwt, is dat de functie een fout opleverd die niet afgevangen wordt. Misschien zou je die functie eens onder de loep moeten nemen en dan alle uitzonderingen afvangen.

gr Niek
 
Ik heb het kunnen oplossen via een omweg. Toch bedankt voor de moeite.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan