![]() |
Active Directory Controller in der Systemumgebung ermitteln
Hallo,
wie kann ich mit einem Delphi Programm ermitteln, ob mein Programm auf einem PC (Server) läuft auf dem der Active Directory Controller installiert ist? Ich kann momentan den Computernamen und die Domäne ermitteln, weiß aber nicht ob mein Programm auf einem Client PC läuft oder direkt auf dem Server. KUBA |
AW: Active Directory Controller in der Systemumgebung ermitteln
Ich nehme an, Du meinst den DomainController. Mit dem
![]()
Delphi-Quellcode:
//-----------------------------------------------------------------------------------------------------
// This code was generated by the Wmi Delphi Code Creator http://theroadtodelphi.wordpress.com // Version: 1.3.8.12 // // // // LIABILITY DISCLAIMER // THIS GENERATED CODE IS DISTRIBUTED "AS IS". NO WARRANTY OF ANY KIND IS EXPRESSED OR IMPLIED. // YOU USE IT AT YOUR OWN RISK. THE AUTHOR NOT WILL BE LIABLE FOR DATA LOSS, // DAMAGES AND LOSS OF PROFITS OR ANY OTHER KIND OF LOSS WHILE USING OR MISUSING THIS CODE. // // //---------------------------------------------------------------------------------------------------- program GetWMI_Info; {$APPTYPE CONSOLE} uses SysUtils, ActiveX, ComObj, Variants; // Die Klasse "Win32_ComputerSystem" stellt ein Computersystem in einer Win32- // Umgebung dar. procedure GetWin32_ComputerSystemInfo; const WbemUser =''; WbemPassword =''; WbemComputer ='localhost'; wbemFlagForwardOnly = $00000020; var FSWbemLocator : OLEVariant; FWMIService : OLEVariant; FWbemObjectSet: OLEVariant; FWbemObject : OLEVariant; oEnum : IEnumvariant; iValue : LongWord; begin; FSWbemLocator := CreateOleObject('WbemScripting.SWbemLocator'); FWMIService := FSWbemLocator.ConnectServer(WbemComputer, 'root\CIMV2', WbemUser, WbemPassword); FWbemObjectSet:= FWMIService.ExecQuery('SELECT * FROM Win32_ComputerSystem','WQL',wbemFlagForwardOnly); oEnum := IUnknown(FWbemObjectSet._NewEnum) as IEnumVariant; while oEnum.Next(1, FWbemObject, iValue) = 0 do begin case Integer(FWbemObject.DomainRole) of 0: Writeln('Standalone Computer'); 1: Writeln('Member Computer'); 2: Writeln('Standalone Server'); 3: Writeln('Member Server'); 4: Writeln('Backup Domain Controller'); 5: Writeln('Primary Domain Controller'); end; Writeln(''); FWbemObject:=Unassigned; end; end; begin try CoInitialize(nil); try GetWin32_ComputerSystemInfo; finally CoUninitialize; end; except on E:EOleException do Writeln(Format('EOleException %s %x', [E.Message,E.ErrorCode])); on E:Exception do Writeln(E.Classname, ':', E.Message); end; Writeln('Press Enter to exit'); Readln; end. |
AW: Active Directory Controller in der Systemumgebung ermitteln
Zitat:
KUBA |
AW: Active Directory Controller in der Systemumgebung ermitteln
Ich habe das Ding ja nicht umsonst verlinkt (Neheimer müssen ja zusammenhalten) ;), das muss man einfach installiert haben IMO.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:59 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz