AGB  ·  Datenschutz  ·  Impressum  







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

Active Directory - Abfrage

Ein Thema von Maya · begonnen am 18. Apr 2012 · letzter Beitrag vom 19. Apr 2012
Antwort Antwort
Benutzerbild von Maya
Maya

Registriert seit: 15. Jun 2011
Ort: Potsdam-Mittelmark
107 Beiträge
 
Delphi 2010 Enterprise
 
#1

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 09:48
Das verstehe ich nicht, der Text wird doch hier
Delphi-Quellcode:
with DataModule2.qry1 do
      begin
        Close;
        SQL.Text:='SELECT displayName FROM ''LDAP://DC=****,DC=lan'' WHERE objectClass=''user'' AND objectCategory=''Person''';
        Open; //<Hier liegt scheinbar immer noch ein Problem.
        First;
      end;
übergeben also was machst Du da?
Wenn ich die SQL-Abfrage direkt in die Query schon zur Designzeit eingebe und im Quelltext die Zuweisung auskommentiere, erscheint die Zugriffsverletzung nicht. Das meinte ich damit, habe mich vielleicht unglücklich ausgedrückt. Ohne "WITH" habe ich es auch schon ausprobiert, da ich auch schon überlegte, ob das nicht ggf. eine Sache sein könnte, die ADO nicht so mag. Ergebnis war aber das gleiche.

Ich habe beim etwas genaueren googeln den Beitrag hier gefunden: http://www.delphipraxis.net/84463-ad...erletzung.html und sind jetzt am Überlegen, ob wir nicht gleich das auch so machen, dass wir die Query dynamisch erstellen.

Delphi-Quellcode:
procedure TForm1.btn1Click(Sender: TObject);
var ConString: String;
    LastErrorIndex, NativeError, NumberError, i: Integer;
    SourceError, DescriptionError, SQLStateError: string;
begin
  ConString:='Provider=ADsDSOObject;Encrypt Password=False;Mode=Read;Bind Flags=0;ADSI Flag=-2147483648';

  try
    qry2:=TADOQuery.Create(nil);
    qry2.SQL.Text:=' SELECT displayName '+
                   ' FROM ''LDAP://DC=****,DC=lan'' '+
                   ' WHERE objectClass=''user'' '+
                   ' AND objectCategory=''Person'' ';
    qry2.Active:=False;
    qry2.ConnectionString:=ConString;
    qry2.Active:=True;
    qry2.First;

    mmo1.Lines.Clear;
    while not qry2.Eof do
      begin
        mmo1.Lines.Add(qry2.FieldByName('displayName').AsString);
        qry2.Next;
      end;
  except
    for I := 0 to qry2.Connection.Errors.Count - 1 do
      begin
        LastErrorIndex:=i;
        SourceError:=qry2.Connection.Errors.Item[LastErrorIndex].Source;
        NumberError:=qry2.Connection.Errors.Item[LastErrorIndex].Number;
        DescriptionError:=qry2.Connection.Errors.Item[LastErrorIndex].Description;
        SQLStateError:=qry2.Connection.Errors.Item[LastErrorIndex].SQLState;
        NativeError:=qry2.Connection.Errors.Item[LastErrorIndex].NativeError;
        Showmessage('SourceError: '+ SourceError+#10#13+
                    'NumberError: '+IntToStr(NumberError)+#10#13+
                    'DescriptionError: '+DescriptionError+#10#13+
                    'SQLStateError: '+SQLStateError+#10#13+
                    'NativeError: '+IntToStr(NativeError));
      end;
    qry2.Free;
  end;
Ich habe auch versucht, bei der Query, die ich zur Designzeit erstelle, direkt den ConnectionString einzugeben, aber hat keine positiven Ergebnisse.

Wenn noch jmd. einen Lösungsansatz hat, wäre ich dem sehr dankbar.


Vielleicht hakts am Doppelpunkt?
Mal ParamCheck abschalten=?
Welcher Doppelpunkt?
Status:
- FIAE
- Rechteinhaberin, ein Rüsselmops sein zu wollen
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.545 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 09:49
Dieser Doppelpunkt vermutlich:
Zitat:
LDAP:
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Maya
Maya

Registriert seit: 15. Jun 2011
Ort: Potsdam-Mittelmark
107 Beiträge
 
Delphi 2010 Enterprise
 
#3

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 09:58
Dieser Doppelpunkt vermutlich:
Zitat:
LDAP:
ICH LIEBE EUCH!!
Echt, das war's, jetzt klappt's perfekt.

Wenn ich das dynamisch erstelle, ist dann ParamCheck von vornherein (OMG, schreibt man das so?) auf "false" gesetzt?
Status:
- FIAE
- Rechteinhaberin, ein Rüsselmops sein zu wollen
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#4

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 10:00
hast du mal den debugger gefragt was in SQL.Text steht?

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Benutzerbild von Maya
Maya

Registriert seit: 15. Jun 2011
Ort: Potsdam-Mittelmark
107 Beiträge
 
Delphi 2010 Enterprise
 
#5

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 10:04
hast du mal den debugger gefragt was in SQL.Text steht?

Gruß
K-H
Nicht nur einmal und hatte eigentlich nie gesehen, dass der Text anders war, als ich ihn eingab. Deswegen verstand ich das Problem nicht. Hätte ich gesehen, dass da was anders drinne steht, hätte ich vielleicht die minimale Chance gehabt, darauf selber zu kommen.
Habe jetzt ParamCheck auf "False" gestellt und nun klappt's tadellos.

Danke an alle, die halfen! Ich schlage mich jetzt weiter mit der Active Directory 'rum.
Status:
- FIAE
- Rechteinhaberin, ein Rüsselmops sein zu wollen
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#6

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 10:34
Dieser Doppelpunkt vermutlich:
Zitat:
LDAP:
Ja, wenn es jetzt klappt, meinte ich den.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.545 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 10:38
Der war ja auch nicht schwer zu finden: einfach alles ausblenden, was kein Doppelpunkt ist
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#8

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 10:50
Ja für Dich!
Aber ein Hinweis auf das SQL Statement hätte nicht geschadet, im restlichen Quelltext waren ja auch noch ein paar Doppelpunkte.
Also gut, die Antwort war etwas schlampig,
Zitat:
ParamCheck
könnte man aber auch noch als Hinweis gelten lassen.
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von Maya
Maya

Registriert seit: 15. Jun 2011
Ort: Potsdam-Mittelmark
107 Beiträge
 
Delphi 2010 Enterprise
 
#9

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 10:53
Der war ja auch nicht schwer zu finden: einfach alles ausblenden, was kein Doppelpunkt ist
Ich glaube, wenn man seit zwei Tagen, wenn nicht so gar schon drei Tagen auf dieses SQL-Statement starrt, dann sieht man nicht mal mehr bunte Herzchen darin, geschweige denn einen Doppelpunkt.

Klappt super und langsam entsteht soetwas wie eine Freundschaft zwischen mir und der Active Directory. Man muss nur wissen, wie man sie nehmen muss.
Status:
- FIAE
- Rechteinhaberin, ein Rüsselmops sein zu wollen
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#10

AW: Active Directory - Abfrage

  Alt 19. Apr 2012, 11:02
Man muss nur wissen, wie man sie nehmen muss.
Wie das eben so ist mit Freundschaften.
Gruß, Jo
  Mit Zitat antworten Zitat
Antwort Antwort


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 20:00 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