Announcement

Collapse
No announcement yet.

Computerliste unter Windows NT

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Computerliste unter Windows NT

    Hallo,

    kann mir jemand sagen, wie ich die Liste der Computer unter einem DC auslesen kann? (Gemeint ist die Liste der Computer unter dem Servermanager)

    Danke,

    Olaf

  • #2
    Hallo,

    wenn das Programm von einem Rechner aus gestartet wird, auf dem Windows 2000/XP installiert ist, steht <b>ADSI</b> zur Verfügung. Der folgend Auszug stammt aus einem Beispielprojekt aus meinem Buch <i>COM/DCOM/COM+ mit Delphi</i>. Die ADSI-Interfaces stehen in Delphi zur Verfügung, wenn die importierte Typbibliotheks-Unit <i>ActiveDs_TLB.pas</i> in das Projekt eingebunden wird:
    <pre>
    uses ComObj, ActiveX;

    { Fix für die fehlerhafte Deklaration von Delphi }

    function FixCoGetObject(pszName: PWideChar; pBindOptions: PBindOpts;
    const iid: TIID; out ppv): HResult; stdcall;
    external 'ole32.dll' name 'CoGetObject';

    procedure TForm1.Button1Click(Sender: TObject);
    var
    aADSCont : IADsContainer;
    aEnum : IEnumVariant;
    vObj : OLEVariant;
    aADs : IAds;
    iCelt : LongWord;
    aComp : IAdsComputer;
    begin
    OleCheck(FixCoGetObject('WinNT://OssiSoft', nil, IID_IADsContainer, aADSCont));
    aEnum := aADSCont._NewEnum as IEnumVariant;
    while (aEnum.Next(1, vObj, iCelt) = S_OK) do
    begin
    aADs := IUnknown(vObj) as IAds;
    if aADs.Class_ = 'Computer' then
    begin
    aComp := aADs as IAdsComputer;
    ListBox1.Items.Add('Computer: ' + aComp.Name);
    end;
    end;
    StatusBar1.SimpleText := 'Fertig!';
    end;
    </pre>
    Hinter "OssiSoft" verbirgt sich der Rechnername des PDC (unter NT) oder des ADS-Servers (unter 2000/XP). Soll auf Nicht-Windows-Betriebssysteme zugegriffen werden, muss "WinNT" durch das entsprechende Gegenstück ausgetauscht werden.
    &#10

    Comment


    • #3
      Hallo Andreas,

      ich danke für die Antwort!

      Gruss

      Ola

      Comment

      Working...
      X