Steve,

As an alternative to Howard's utility..
code:
 BREAK ON
$domainstring = "DOMAINNAME"
$GroupString = "REALC1"
$GroupObj = GetObject("WinNT://" + $DomainString + "/" + $GroupString)
IF EXIST("H:\USERLIST.CSV")
DEL "H:\USERLIST.CSV"
ENDIF
IF Open( 3 , "H:\USERLIST.CSV" , 5 ) = 0
$hdr = "GROUPNAME"
$x = WriteLine( 3 , $hdr + @crlf)
For each $UserObj in $GroupObj.Members
$List = $List + $UserObj.Name
Next
$x = WriteLine( 3 , $list + @crlf)
?$list + @crlf
$x = CLOSE(3)
ENDIF

$groupobj = 0
?"Process is complete.."
SLEEP 2

You can use this to check and write the group list to a log from the domain:
code:
 BREAK ON
$domainstring = "DOMAINNAME"
$domainobj = GetObject("WinNT://" + $domainstring)
$domainobj.filter = Array("group")
IF EXIST("H:\GRPLIST.CSV")
DEL "H:\GRPLIST.CSV"
ENDIF
IF Open( 3 , "H:\GRPLIST.CSV" , 5 ) = 0
$hdr = "GROUPNAME"
$x = WriteLine( 3 , $hdr + @crlf)
FOR EACH $groupobj IN $domainobj
IF $groupobj.class = "Group"
$list = $list + $groupobj.name
ENDIF
NEXT
$x = WriteLine( 3 , $list + @crlf)
?$list + @crlf
$x = CLOSE(3)
ENDIF

$domainobj = 0
?"Process is complete.."
SLEEP 2

Or.. Groups of a user:

code:
 BREAK ON
$domainstring="ComputerName"
$userstring = "jdoe"
$userobj = GetObject("WinNT://" + $domainstring + "/" + $userstring)
IF EXIST("H:\PGRP.CSV")
DEL "H:\PGRP.CSV"
ENDIF
IF Open( 3 , "H:\PGRP.CSV" , 5 ) = 0
$hdr = "GROUPNAME"
$x = WriteLine( 3 , $hdr + @crlf)
FOR EACH $groupobj IN $userobj.groups
$list = $list + $groupobj.name
NEXT
$x = WriteLine( 3 , $list + @crlf)
?$list + @crlf
$x = CLOSE(3)
ENDIF

$userobj = 0
?"Process is complete.."
SLEEP 2

HTH,

Kent

[ 04. December 2002, 14:37: Message edited by: kdyer ]
_________________________
Utilize these resources:
UDFs (Full List)
KiXtart FAQ & How to's