Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Системное программирование > Получить список компьютеров в домене


Автор: UserNet 28.7.2009, 14:52
Народ, есть проблема надо получить список компов в домене.
Код:
Код

##Active perl
use Win32::OLE;
use Net::Ping;
##use URI::LDAP;

open(test,"> test.txt");
$DOMAIN_NAME="dc2";
print "Hello, World...\n";
my $Container = Win32::OLE->GetObject('WinNT://'.$DOMAIN_NAME); 
##my $Container = Win32::OLE->GetObject("LDAP://ou=test123,dc=hatki"); 
$Container->{"Filter"} = ("computers");
foreach  my $User (in $Container){

print (test $User->{Name});
print (test $User->{Type} , "\n");
}
close(test);



Выводит всё кроме компьютеров, где ошибка?

Автор: UserNet 29.7.2009, 14:46
Проблема, решилась, надо было за место имени сервера, поставить, имя домена.
Код

my $Container = Win32::OLE->GetObject("WinNT://tubus"); 

Но вот фильтр не работает
Код

$Container->{"Filter"} = ("User");


Вместо него
Код

if ( $User->{Class} eq ("Computer") ) 
    
     {
         print ($User->{Name} , $User->{Class},"\n");
         #print 
      }


Кто-нибудь знает в чём проблема?

Автор: Ramirez 17.8.2009, 12:07
вот тут http://techtasks.com/code/viewbook/3?lang=Perl очень хорошие примеры.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)