http://www.perlmonks.org?node_id=881641


in reply to PERL en ADSI

This smells like homework... What did you do so far? BTW you should edit your text out of the code tags. See also How do I post a question effectively?.

Replies are listed 'Best First'.
Re^2: PERL en ADSI
by PerlUserNL (Initiate) on Jan 11, 2011 at 11:35 UTC

    I have made a step for step plan: First I want to get the overvieuw of the users. Then I want to compare the first names. Then I want to get the output of the users with the same name. Now i need to copy the usernames to the general field.

    use Win32::OLE; $ou=Win32::OLE->GetObject("LDAP://ou=Users,dc=myDomain,dc=net"); @filter=("user"); $ou->{filter}=\@filter; foreach $obj (in $ou){ print "$obj->{name}\n"; }

    Above code i want to use to get the user list. But i think i did something wrong, or maybe it can be done on a easier way.

      Yep.

      Add

      use strict; use warnings;
      To the top of that code, and Perl will tell you what is technically wrong and help get the code to run.

      You will save yourself from a million headaches if you use those liberally.

      (Appended)
      PS:
      A quick look through the Win32::OLE description indicates that your code probably won't compile because "in" isn't exported by default. You probably want to add that and anything else you want to use to your use statements up top.

        use strict; use warnings; use Win32::OLE; $ou=Win32::OLE->GetObject("LDAP://ou=Users,dc=myDomain,dc=net"); @filter=("user"); $ou->{filter}=\@filter; foreach $obj (in $ou){ print "$obj->{name}\n"; }

        I add the strict en warnings by default in my scripts, But i forgot to posted it here...