# Kod tworzy list dystrybucyjn i umoliwia jej posiadanie adresu e-mail

use Win32::OLE;
$Win32::OLE::Warn = 3;

# ------ KONFIGURACJA SKRYPTU ------
$strParentDN = '<NazwaWyrniajcaObiektuNadrzdnego>'; # np. ou=groups,dc=rallencorp,dc=com
$strGroupName = '<NazwaGrupy>'; # np. Uytkownicy1
# ------ KONIEC KONFIGURACJI ---------
# Stae pobrane ze zbioru wyliczeniowego ADS_GROUP_TYPE_ENUM
use constant ADS_GROUP_TYPE_DOMAIN_LOCAL_GROUP => 1;
use constant ADS_GROUP_TYPE_GLOBAL_GROUP => 2;
use constant ADS_GROUP_TYPE_LOCAL_GROUP => 4;
use constant ADS_GROUP_TYPE_SECURITY_ENABLED => -2147483648;
use constant ADS_GROUP_TYPE_UNIVERSAL_GROUP => 8;

$objOU = Win32::OLE->GetObject('LDAP://' . $strParentDN);
$objGroup = $objOU->Create('group', 'cn=' . $strGroupName);
$objGroup->Put('groupType', ADS_GROUP_TYPE_UNIVERSAL_GROUP);
$objGroup->Put('sAMAccountName', $strGroupName);
$objGroup->MailEnable();
$objGroup->SetInfo();
print "Z powodzeniem utworzono list dystrybucyjn, ktra moe posiada adres e-mail.\n";
