You can try this:

-=-

use Win32::OLE qw( in );

my $CLASS = "Computer";
my $Domain = $ENV{'USERDOMAIN'};        # using local env from W2K
my %machines;
my @computers;

if( my $AD = Win32::OLE->GetObject( "WinNT://$Domain,domain" ) )
{
        $AD->{Filter} = [ $CLASS ];     # apply filter on our query
        foreach my $obj( in( $AD ) )    # enum results
        {
                $machines{ $obj->{Name} } = 1;  # unique names in list
        }
        @computers = keys %machines;
        print join( "\n\t", @computers );
}



-=-


:smp


-----Original Message-----
From: Stefan Olsson [mailto:[EMAIL PROTECTED]
Sent: 20. oktober 2003 17:36
To: [EMAIL PROTECTED]
Subject: foreach my $computer ($domain)


Hello,

I would like to do an inventory on all pc's in the domain (Active 
Directory). It is just that I have problem to actually retrieve the data 
when doing this:
my $Data = Win32::OLE->GetObject("WinNT://$LocalDomain") or die "Unable 
connect to domain";
-When using Data::Dumper on $Data this is the result:
$VAR1 = bless( {}, 'Win32::OLE' );
-All I want to do is to enumerate the computers in the domain and save them 
in @computers to then do an inventory on each of them. Can someone help me 
on this?

---<script begins here>--------------
#!/usr/bin/env perl
use strict;
use warnings;
use Win32::OLE;
use Data::Dumper;
my $LocalDomain="NTDOMAIN";
my $Data= Win32::OLE->GetObject("WinNT://$LocalDomain") or die "Unable 
connect to domain";

print Dumper($Data);
---<script begins here>--------------
above results in a single line:
$VAR1 = bless( {}, 'Win32::OLE' );

_________________________________________________________________
MSN 8 helps eliminate e-mail viruses. Get 2 months FREE*. 
http://join.msn.com/?page=features/virus

_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

_______________________________________________
Perl-Win32-Admin mailing list
[EMAIL PROTECTED]
To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs

Reply via email to