ForumSevgisi.Com

  ForumSevgisi.Com > ForumSevgisi Webmaster Bölümü > Webmaster Genel

Webmaster Genel Webmasterlıkla ilgili Her şeyin Paylaşıldığı Bölüm.


Primary Domain Controler i bulmak

Webmasterlıkla ilgili Her şeyin Paylaşıldığı Bölüm.


Primary Domain Controler i bulmak

ForumSevgisi Webmaster Bölümü Kategorisinde ve Webmaster Genel Forumunda Bulunan Primary Domain Controler i bulmak Konusunu Görüntülemektesiniz,Konu İçerigi Kısaca ->> Primary Domain Controler i bulmak Primary Domain Controler i bulmak Kod: { The NetGetDCName function returns the name of the ...

Kullanıcı Etiket Listesi

Yeni Konu aç  Cevapla
LinkBack Seçenekler Stil

Okunmamış 09 Nisan 2015, 16:20   #1
Durumu:
Çevrimdışı
Kaf_Dağı - ait Kullanıcı Resmi (Avatar)
Arastirmaci
Üyelik tarihi: 26 Ekim 2014
Şehir: ~~~~~~
Mesajlar: 1.130
Konular: 710
Beğenilen: 168
Beğendiği: 334
www.forumsevgisi.com
Standart Primary Domain Controler i bulmak

Primary Domain Controler i bulmak

Primary Domain Controler i bulmak

Kod:
        { 
  The NetGetDCName function returns the name of the primary domain controller (PDC). 
  It does not return the name of the backup domain controller (BDC) for the specified domain. 
  Also, you cannot remote this function to a non-PDC server. 
  Windows 2000/XP: Applications that support DNS-style names should call the  function. 
  Domain controllers in this type of environment have a multi-master 
  directory replication relationship. 
  Therefore, it may be advantageous for your application to use a DC that is not the PDC. 
  You can call the DsGetDcName function to locate any DC in the domain; 
  NetGetDCName returns only the name of the PDC. 
}
 
type
  EAccessDenied = Exception; 
  EInvalidOwner = Exception; 
  EInsufficientBuffer = Exception; 
  ELibraryNotFound = Exception; 
 
  NET_API_STATUS = Integer; 
 
const
  NERR_Success = 0; 
 
var
  NTNetGetDCName: function (Server, Domain: pWideChar; var DC: pWideChar): NET_API_STATUS; stdcall; 
  NTNetGetDCNameA: function (Server, Domain: PChar; var DC: PChar): NET_API_STATUS; stdcall; 
  NTNetApiBufferFree: function (lpBuffer: Pointer): NET_API_STATUS; stdcall; 
 
procedure NetCheck(ErrCode: NET_API_STATUS); 
begin
  if ErrCode <> NERR_Success then
  begin
    case ErrCode of
      ERROR_ACCESS_DENIED: 
        raise EAccessDenied.Create('Access is Denied'); 
      ERROR_INVALID_OWNER: 
        raise EInvalidOwner.Create('Cannot assign the owner of this object.'); 
      ERROR_INSUFFICIENT_BUFFER: 
        raise EInsufficientBuffer.Create('Buffer passed was too small'); 
      else
        raise Exception.Create('Error Code: ' + IntToStr(ErrCode) + #13 + 
          SysErrorMessage(ErrCode)); 
    end; 
  end; 
end; 
 
function GetPDC(szSystem: string): string; 
  { if szSystem = '' return the PDC else return DC for that domain }
const
  NTlib = 'NETAPI32.DLL'; 
  Win95lib = 'RADMIN32.DLL'; 
var
  pAnsiDomain: PChar; 
  pDomain: PWideChar; 
  System: array[1..80] of WideChar; 
  ErrMode: Word; 
  LibHandle: THandle; 
begin
  Result := ''; 
  LibHandle := 0; 
  try
    if Win32Platform = VER_PLATFORM_WIN32_NT then
    begin
      ErrMode := SetErrorMode(SEM_NOOPENFILEERRORBOX); 
      LibHandle := LoadLibrary(NTlib); 
      SetErrorMode(ErrMode); 
      if LibHandle = 0 then
        raise ELibraryNotFound.Create('Unable to map library: ' + 
          NTlib); @NTNetGetDCName := GetProcAddress(Libhandle, 'NetGetDCName'); 
        @NTNetApiBufferFree       := GetProcAddress(Libhandle, 
        'NetApiBufferFree'); 
      try
        if szSystem <> '' then
          NetCheck(NTNetGetDCName(nil, StringToWideChar(szSystem, @System, 80), pDomain)) 
        else
          NetCheck(NTNetGetDCName(nil, nil, pDomain)); 
        Result := WideCharToString(pDomain); 
      finally
        NetCheck(NTNetApiBufferFree(pDomain)); 
      end; 
    end
    else
    begin
      ErrMode := SetErrorMode(SEM_NOOPENFILEERRORBOX); 
      LibHandle := LoadLibrary(Win95lib); 
      SetErrorMode(ErrMode); 
      if LibHandle = 0 then
        raise ELibraryNotFound.Create('Unable to map library: ' + 
          Win95lib); @NTNetGetDCNameA := GetProcAddress(Libhandle, 'NetGetDCNameA'); 
        @NTNetApiBufferFree := GetProcAddress(LibHandle, 'NetApiBufferFree'); 
      try
        if szSystem <> '' then
          NetCheck(NTNetGetDCNameA(nil, PChar(szSystem), pAnsiDomain)) 
        else
          NetCheck(NTNetGetDCNameA(nil, nil, pAnsiDomain)); 
        Result := StrPas(pAnsiDomain); 
      finally
        NetCheck(NTNetApiBufferFree(pAnsiDomain)); 
      end; 
    end; 
  finally
    if LibHandle <> 0 then
    begin
      FreeLibrary(Libhandle); // free handle if it has been allocated 
    end; 
  end; 
end; 
 
// Example call, Beispielaufruf: 
 
procedure TForm1.Button1Click(Sender: TObject); 
begin
  try
    Screen.Cursor  := crHourGlass; 
    label1.Caption := GetPDC(''); 
  finally
    Screen.Cursor := crDefault; 
  end; 
end;

________________
.........................
imza
Alıntı ile Cevapla
Yeni Konu aç  Cevapla

Etiketler
bulmak, controler, domain, primary, primary domain controler i bulmak

Seçenekler
Stil


Saat: 06:43

Forum Yasal Uyarı
vBulletin® ile Oluşturuldu
Copyright © 2016 vBulletin Solutions, Inc. All rights reserved.

ForumSevgisi.Com Her Hakkı Saklıdır
Tema Tasarım:
Kronik Depresif


Sitemiz bir 'paylaşım' sitesidir. Bu yüzden sitemize kayıt olan herkes kontrol edilmeksizin mesaj/konu/resim paylaşabiliyorlar. Bu sebepten ötürü, sitemizdeki mesaj ya da konulardan doğabilecek yasal sorumluluklar o yazıyı paylaşan kullanıcıya aittir ve iletişim adresine mail atıldığı taktirde mesaj ya da konu en fazla 48 saat içerisinde silinecektir.

ankara escort, izmir escort ankara escort, ankara escort bayan, eryaman escort, bursa escort pendik escort, antalya escort,