http://qs321.pair.com?node_id=9401
Category: NT admin
Author/Contact Info ergowolf
Description: This program grabs a list of all users on the domain and emails them to whoever you specify
use strict;
use Win32::NetAdmin;
use Net::SMTP;

my $dc = "\\\\x";
my $from = 'x@x.com';
my @recip_list = ('x@x.com', 'y@y.com');
my $smtp_host = "x.x.x.x";
my @users = ();
my $VERSION = "1.2";

my $smtp = Net::SMTP->new($smtp_host, Timeout => 30) || die "Can't con
+nect to $smtp_host.\n";

$smtp->mail($from) || die "cannot mail from.\n\n";

$smtp->recipient(@recip_list);    
$smtp->data();

$smtp->datasend("To:\tPerl Recipients\n");
$smtp->datasend("Subject:\tPerl output of Users in the domain\n\n");

Win32::NetAdmin::GetUsers($dc, undef, \@users) || die "GetUsers failed
+.\n";

foreach (@users) {
$smtp->datasend( "$_\n\n");
}

$smtp->dataend;
$smtp->quit;

=head1 NAME

adminmail - This script grabs a list of all the users in a domain and 
+emails the results to an email address.

=head1 DESCRIPTION

This program is useful for quickly getting a list of all the users on 
+your domain.  I wrote this program when our Notes 
administrator "Maddog" needed a list of users on the domain.

=head1 README

This script grabs a list of all the users in a domain and emails the r
+esults to an email address.

=head1 PREREQUISITES

This script has a few requirements.  You will need the Win32::NetAdmin
+ and Net::SMTP modules.
You will also need to change the values for dc, from, recip_list, and 
+smtp_host.

=head1 COREQUISITES

None

=pod OSNAMES

MSWin32

=pod SCRIPT CATEGORIES

Win32/Utilities 

=cut