Active Directory Authentication sonrası hata

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
aliplane
Üye
Mesajlar: 30
Kayıt: 06 Eki 2008 03:32

Active Directory Authentication sonrası hata

Mesaj gönderen aliplane »

Arkadaşlar merhaba,
Delphi ile active directory authentication yapıyorum.
Authentication işleminden sonra objelerim access violation exception hatası alıyor.
Sebebi nedir.
Debugda iken objenin üzerine gittiğimde linkdeki şekilde oluyor
http://img24.resimup.net/di/AGZ5.png

İlgili kütüphane için:
http://www.agnisoft.com/white_papers/ac ... ectory.asp

Kod: Tümünü seç

try
              sonuc:= domainKontrol(trim(Edit1.Text),trim(Edit2.Text));
              if sonuc=true then
                islemTamam(bTemsilci)
                else
                  showmessage('Parolanız Hatalıdır !');
              except on E: Exception do
                   showmessage('Parolanız Hatalıdır !');
              end;

Kod: Tümünü seç

function TLoginFrm.domainKontrol(domainUser:string;domainPass:string):Boolean;
var
  dom:IADsContainer;
  usr:IADSUser;
begin
  try
    if dom<>nil then dom:=nil;
    ADsOpenObject('WinNT://localdomain.local',domainUser,domainPass,ADS_SECURE_AUTHENTICATION,IADsContainer,dom);
    ADsOpenObject('WinNT://localdomain.local/'+domainUser,domainUser,domainPass,ADS_SECURE_AUTHENTICATION,IADsUser,usr);
    if (usr.AccountDisabled) or (usr.IsAccountLocked) then
    begin
      KullaniciBloke.Close;
      KullaniciBloke.ParamByName('domain_username').Value:=domainUser;
      KullaniciBloke.ExecSQL;
      KullaniciBloke.Close;
      Result:=false
    end
    else
      Result:=true;
  except on E: Exception do
    Result:=false;
  end;
end;
aliplane
Üye
Mesajlar: 30
Kayıt: 06 Eki 2008 03:32

Re: Active Directory Authentication sonrası hata

Mesaj gönderen aliplane »

İşin garip tarafı kodların aralarına showmessage yaptığımda sorun yok.
Ancak fonksiyondan çıktıktan sonra problem oluyor.
fonksiyon sonucunu Result:=true dediğim için başka bir şeyle karışıyor olabilir mi??

Kod: Tümünü seç

if dom<>nil then dom:=nil;
    ShowMessage(Edit1.Text);
    ADsOpenObject('WinNT://bmd.boydak.local',domainUser,domainPass,ADS_SECURE_AUTHENTICATION,IADsContainer,dom);
        ShowMessage(Edit1.Text);
    ADsOpenObject('WinNT://bmd.boydak.local/'+domainUser,domainUser,domainPass,ADS_SECURE_AUTHENTICATION,IADsUser,usr);
        ShowMessage(Edit1.Text);
aliplane
Üye
Mesajlar: 30
Kayıt: 06 Eki 2008 03:32

Re: Active Directory Authentication sonrası hata

Mesaj gönderen aliplane »

domainKontrol fonksiyonunu kullanmayıp kodun içine gömdüğümde hata almıyorum.
formu showmodal açıyorum.
Showmodal form içinde fonksiyon olduğundan result:=true dediğim için problem yaratıyor sanırım.
Nedir bunun çözümü???
Kullanıcı avatarı
Lost Soul
Üye
Mesajlar: 1064
Kayıt: 01 Nis 2007 02:55
Konum: mekan ANKARA toprak ELAZIĞ
İletişim:

Re: Active Directory Authentication sonrası hata

Mesaj gönderen Lost Soul »

Merhaba. Bilgisayar basinda degilim. kodlari biraz inceledim ama acces violation hatasi alinacak bir yer goremedim.
Metod modal bir form uzerinde mi calisiyor.
Calisiyorsa onshow ya oncreate gibi bir olaya mi bagli.

formun ondestroy ya da onclose ya da onclosequery olaylarinda bir kod var mi.
aliplane
Üye
Mesajlar: 30
Kayıt: 06 Eki 2008 03:32

Re: Active Directory Authentication sonrası hata

Mesaj gönderen aliplane »

fonksiyon showmodal form üzerinde çalışıyor.
showmodal formun onclose eventinde action:=cafree var.
Ancak onclose daki eventi commentlediğimde de hata alıyorum.
Kodu fonksiyondan çıkarıp kodun içine attığımda çalışıyor,fonksiyon yaptığımda çalışmıyor.
Cevapla