zitruslimmonade
Goto Top

überprüfen ob PC in Domain ist

Halli,
Ich suche eine batch mithilfe ich überpfüfen kann, ob sich ein Rechner bereits in einer Domain befindet. Hat einer von euch bereits derartiges gemacht ?

besten Dank schonmal im Voraus
Chris

Content-ID: 119639

Url: https://administrator.de/contentid/119639

Ausgedruckt am: 22.11.2024 um 10:11 Uhr

bastla
bastla 02.07.2009 um 19:15:36 Uhr
Goto Top
Hallo Zitruslimmonade!

Sieh Dir einmal die Systemvariable %LOGONSERVER% an ...

[Edit] Vergiss es - damit kannst Du nur überprüfen, ob der aktuelle User an der Domäne angemeldet ist (anderenfalls hat %LOGONSERVER% den Wert \\%COMPUTERNAME%). [/Edit]

Grüße
bastla
Zitruslimmonade
Zitruslimmonade 02.07.2009 um 20:23:16 Uhr
Goto Top
Danke, gehe ich recht in der Annhame das die Variable leer ist, sollte der PC keiner Domain angehört ?
neuni88
neuni88 02.07.2009 um 20:39:17 Uhr
Goto Top
Könnte mir vorstellen, dass dann der PC-Name drinsteht als Domain. (Zumindest beim XP)
Aber sicher bin ich mir nicht.
bastla
bastla 02.07.2009 um 22:05:43 Uhr
Goto Top
Hallo Zitruslimmonade!

Soferne Du "WMIC" zur Verfügung hast (ab XP), könntest Du es so versuchen:
@echo off & setlocal
set DR=
for /f %%i in ('wmic computersystem GET DomainRole^|findstr .') do set "DR=%%i"  
if defined DR if %DR% neq 0 if %DR% neq 2 echo in Domain
Das "findstr" soll dafür sorgen, dass die Verarbeitung auch mit Vista klappt.

Unter W2000 müsstest Du auf eine Variante mit integriertem VBScript (die eigentlich ab W2000 funktionieren sollte) zurückgreifen:
@echo off & setlocal
set G=%temp%\GetDomainRole.vbs
>%G% echo For Each C In GetObject("winmgmts:root\cimv2").ExecQuery("SELECT * FROM Win32_ComputerSystem"):WScript.Echo C.DomainRole:Next  
set DR=
for /f %%i in ('cscript //nologo %G%') do set "DR=%%i"  
if defined DR if %DR% neq 0 if %DR% neq 2 echo in Domain
Grüße
bastla