antwoord op vraag 4:
. . . # implementatie functie bind_object: zie reeks 6, oefening 4
. . . # implementatie functie valueattribuut: zie oefening 1

@ARGV == 1 or die "geef als enige parameter de naam van de ou\n";
my $cont=bind_object("OU=Labo,DC=iii,DC=hogent,DC=be");
my %lijst;
foreach (in $cont) {
        $_->GetInfoEx(["canonicalName"],0);
        $_->Get("canonicalName") =~ m[.*/(.*)$];
        $lijst{lc($1)}=undef;
}

my $ou_naam=$ARGV[0];
while (exists $lijst{lc($ou_naam)} || !$ou_naam) {
     print qq[canonicalName moet uniek zijn !\nde volgende namen mag je niet meer nemen in deze container: "]
          ,join ('" "',keys %lijst),qq["\ngeef nieuwe naam:];
     chomp($ou_naam=<STDIN>);
}

my $ou=$cont->Create("organizationalunit", "ou=$ou_naam");
$ou->SetInfo();
print "toegevoegd met verplichte properties ",join (", ",in bind_object($ou->{schema})->{MandatoryProperties})
     unless (Win32::OLE->LastError());