AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

AD Hilfe !!

Ein Thema von uranop · begonnen am 30. Aug 2008 · letzter Beitrag vom 10. Sep 2008
Antwort Antwort
Seite 1 von 2  1 2      
uranop

Registriert seit: 19. Jul 2008
Ort: Wolfratshausen
10 Beiträge
 
Delphi 6 Enterprise
 
#1

AD Hilfe !!

  Alt 30. Aug 2008, 15:30
Moin ...
ich habe mir mal nen vorgaenger thread an geguggt
>> http://www.delphipraxis.net/internal...t.php?p=866363

analog dazu wollte ich mein vorhaben auch durchziehen.

source:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
conn,com,rs: variant;
sUser,txtUserID,txtDomain: string;
strBase, strAttributes, strADS : string;
begin
  conn := CreateOleObject('ADODB.Connection');
  com := CreateOleObject('ADODB.Command');
  try
    conn.Provider := 'ADsDSOObject';
    conn.open;
    com.ActiveConnection := conn;
    txtUserID := Edit1.Text;

    strBase := '<LDAP://SERVER/>';
    strAttributes := 'displayName,description,department,mail,homeDrive,homeDirectory,telephonenumber,rocheLocalCostCenter';
    strADS := strBase + ';cn=' + txtUserID + ';' + strAttributes + ';subtree';
    com.CommandText := strADS;

    com.Properties['Page Size'] := 100000;
    com.Properties['Searchscope'] := 2;
    com.Properties['Cache Results'] := False;
    rs := com.Execute;

if Not rs.EOF then
    begin
    Edit2.Text := txtUserID;
    Edit3.Text := rs.Fields['displayName'].Value;
    Edit4.Text := rs.Fields['description'].Value;
    Edit5.Text := rs.Fields['department'].Value;
    Edit6.Text := 'bla';
    Edit7.Text := rs.Fields['mail'].Value;
    Edit8.Text := rs.Fields['homeDrive'].Value;
    Edit9.Text := rs.Fields['homeDirectory'].Value;
    Edit10.Text := rs.Fields['telephoneNumber'].Value;
    Edit11.Text := rs.Fields['rocheLocalCostCenter'].Value;
    end
else
      MessageDlg('Kein Datensatz gefunden.',mtInformation,[mbOK],0);
    Rs := NULL;
  finally
    com := NULL;
    conn.Close;
    conn := NULL;
  end;
end;
compiler laeuft ohne probleme.
nur beim testen springt mir andauernd nen fehler ins gesicht
" Der Befehl enthielt mindestens einen Fehler "

irgendwie komm ich nicht dahinter wos klemmt

debugger bleibst stehen bei

rs := com.Execute;

cp zu http://www.delphi-forum.de/viewtopic.php?p=521019
  Mit Zitat antworten Zitat
Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
947 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

Re: AD Hilfe !!

  Alt 31. Aug 2008, 11:30
Hi,

dann schau dir doch mal die Postings in deinem Link genauer an.
Empfehlen würde ich den Code in #13 und achte auf die Filter!!!

Nebenbei, was ist denn das für ein Titel?

Gruß
  Mit Zitat antworten Zitat
uranop

Registriert seit: 19. Jul 2008
Ort: Wolfratshausen
10 Beiträge
 
Delphi 6 Enterprise
 
#3

Re: AD Hilfe !!

  Alt 31. Aug 2008, 14:48
das was in #13 steht habe ich ja als basis genommen ... mit null erfolg bisher ...
titel ? ehm naja nach der arbeit is man nicht mehr so auf geistiger hoeher : P
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: AD Hilfe !!

  Alt 31. Aug 2008, 15:44
Herzlich willkommen in der Delphi-PRAXiS, uranop.

Du magst den ursprünglichen Code als Basis verwendet haben, aber beim Filter hast du eine Anpassung vornehmen müssen und prompt gepatzt. Die Syntax für LDAP-Filter ist definiert und muss in deinem Fall so aufgebaut werden:

Delphi-Quellcode:
// ...
strADS := Format('LDAP://%s;(cn=%s);%s;subtree', [serverName, txtUserID, strAttributes]);
// ...
Die runden Klammern sind Pflicht. Bei manchen Attributwerten musst du auch noch Zeichen maskieren.

Freundliche Grüße
  Mit Zitat antworten Zitat
Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
947 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

Re: AD Hilfe !!

  Alt 31. Aug 2008, 15:46
Hi,

Zitat:
ehm naja nach der arbeit is man nicht mehr so auf geistiger hoehe
Warst wohl heut auch arbeiten?

Ich schrieb das etwas, das nannte sich Filter, diese vermisse ich bei deinem Code:
Delphi-Quellcode:
strBase := '<LDAP://SERVER/>';
strAttributes := 'displayName,description,department,mail,homeDrive,homeDirectory,telephonenumber,rocheLocalCostCenter';
strADS := strBase + ';cn=' + txtUserID + ';' + strAttributes + ';subtree';
Sollte es nicht so aussehen:
Delphi-Quellcode:
strFilter := '(&(objectCategory=person)(objectClass=user)(sAMAccountName='+ Edit1.Text +'))';
strAttributes := 'displayName,description,department,mail,homeDrive,homeDirectory,telephonenumber,rocheLocalCostCenter';
strADS := strBase + ';' + strFilter + ';' + strAttributes + ';subtree';
Gruß
  Mit Zitat antworten Zitat
uranop

Registriert seit: 19. Jul 2008
Ort: Wolfratshausen
10 Beiträge
 
Delphi 6 Enterprise
 
#6

Re: AD Hilfe !!

  Alt 31. Aug 2008, 16:04
nja die leidige arbeit ...
nimmt derzeit kein ende. aber egal.

erstmal vielen dank .

das mit den filtern hatte ich vergessen. bzw einfach uebersehen .

momentan bin ich soweit das ich eigentlich fast alles auslesen kann.

einzigstes problem ist der inhalt des value feldes von description.

hier ist rein logischerweise nen string drin z.b. Penzberg-PRCOEEngeneering 123456789

dieser wert laesst sich nicht in einem edit feld anzeigen.

ausgegebener fehler: invalid variant type conversion

kommt mirspanisch vor. alle felder die es zum auslesen gilt, sind Case Ignore Strings
der rest geht ja.

auch vartostr hilft nicht weiter.

das ist derzeit das letzte verbliebene problem

Edit //
hier gibts anscheinend so nen universellen var to string converter
http://www.delphi3000.com/articles/article_1540.asp?SK=

jo, das ding also eingebaut , keine fehlermeldung mehr. aber leeres editfeld grmbl
  Mit Zitat antworten Zitat
Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
947 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

Re: AD Hilfe !!

  Alt 31. Aug 2008, 17:37
Hi,

bist du dir sicher das in 'description' etwas eingetragen ist, es gehört zu den optionalen Werten.

Gruß
  Mit Zitat antworten Zitat
uranop

Registriert seit: 19. Jul 2008
Ort: Wolfratshausen
10 Beiträge
 
Delphi 6 Enterprise
 
#8

Re: AD Hilfe !!

  Alt 31. Aug 2008, 17:41
ja bin ich ...
is ueberall was eingetragen auch mit einem ldapbrowser ueberprueft

das interessante ist auch das nen vbs script das auch auslesen kann ohne irgendwelche sonderformatierungen
  Mit Zitat antworten Zitat
Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
947 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#9

Re: AD Hilfe !!

  Alt 31. Aug 2008, 17:52
Nur zur Information.

Vielleicht hilft ja dies weiter : 1.3.6.1.4.1.1466.115.121.1.15.

Das mit dem vbs-Script ist ja schön, aber meiner Erfahrung nach werden da zuviele Sachen abgenommen
die man bei anderen Sprachen dann eben doch braucht.

Gruß

PS Ich kann ja morgen ma schauen ob es da eine Lösung gibt.
Meine 'virtuelle' Domäne ist nählich gerade Down.
  Mit Zitat antworten Zitat
uranop

Registriert seit: 19. Jul 2008
Ort: Wolfratshausen
10 Beiträge
 
Delphi 6 Enterprise
 
#10

Re: AD Hilfe !!

  Alt 31. Aug 2008, 18:02
klasse da waere ich dir aber sehr zu dank verpflichtet !!

//Edit:

Hallo alter Mann : P

Also inzwischen bin ich dahintergekommen das die description im grunde nichts anderes ist als
die zusammensetzung 2 werte der OU strings ( standort und division ) und die employeeID hinten drangehaengt ...

ich werde mich nun bissl mit der string suche befassen und das denn so da einbasteln ...

nichts desto troz wuerde es mich dennoch brennend interessieren, warum ich den eigentlichen wert der description nicht auslesen kann.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:20 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz