Einzelnen Beitrag anzeigen

Benutzerbild von GimbaR
GimbaR

Registriert seit: 17. Apr 2004
Ort: Weltmetropole Rostock ;)
134 Beiträge
 
Delphi 2006 Professional
 
#6

Re: Adresse des Domänencontrollers ermitteln

  Alt 14. Mär 2007, 15:42
Ehrlich gesagt sieht die Funktion bei mir auch etwas anders aus^^
Delphi-Quellcode:
function GetPDC(Host: WideString = ''; Domain: WideString = ''): TAPIResult;
var
  pPDC: Pointer;
begin
  // Standard zuweisen
  pPDC:= nil;

  try
    // PDC durch API-Aufruf zuweisen
    result.Err:= NetGetDCName(PWideChar(Host), PWideChar(Domain), pPDC);

    // PDC auslesen und als Result festlegen
    if (result.Err = 0) and (pPDC <> nil) then
      result.Text:= PWideChar(pPDC);
  finally
    // Speicher des Pointer freigeben
    NetApiBufferFree(pPDC);
  end;
end;
TAPIResult ist wie folgt deklariert:
Delphi-Quellcode:
type
  TAPIResult = record
    Text: String;
    TextArray: TStringArray;
    Err: HResult;
  end;
Als Programmierer muss ich dann die Eigenschaft Err auswerten und Text oder ggf TextArray auswerten. Da ich hier aber die Funktion vereinfachen wollte (TAPIResult benutzte ich für mich um auf die selbe Weise verwenden zu können; mittlerweile benutze ich diese Vorgehensweise nicht mehr und es ist schon ne weile her seit dem ich den DC ermitteln musste) und ich der Meinung bin, dass ein String von sich aus leer ist, habe ich das ganze nen bissl umgeschrieben.

PS: "leer" im Sinne von := '';
Jonas
Bei dem Tempo ist es nur noch eine Frage der Zeit bis SSchäuble verlangt allen deutschen Bürgern ein Halsband zur ständigen Überwachung zu verpassen...
  Mit Zitat antworten Zitat