use strict 'vars'; use warnings; use Win32API::Net; use Win32::NetAdmin; my $name = Win32::LoginName(); my $domain = Win32::DomainName(); my $pdc; my @GlobalGroups; Win32::NetAdmin::GetDomainController('',$domain,$pdc); print "Name: $name,\tDomain: $domain,\tPDC: $pdc\n"; Win32API::Net::UserGetGroups($pdc,$name,\@GlobalGroups); foreach ( @GlobalGroups ) { print "Found: $_\n"; }