Sys::Info::Driver::Windows::OS::Net - A minimal interface to Win32API::Net


Sys-Info-Driver-Windows documentation Contained in the Sys-Info-Driver-Windows distribution.

Index


Code Index:

NAME

Top

Sys::Info::Driver::Windows::OS::Net - A minimal interface to Win32API::Net

SYNOPSIS

Top

    use Sys::Info::Driver::Windows::OS::Net;
    print Sys::Info::Driver::Windows::OS::Net->user_fullname( $login );

DESCRIPTION

Top

This document describes version 0.78 of Sys::Info::Driver::Windows::OS::Net released on 17 April 2011.

A minimal interface to Win32API::Net. If you're under Win9x, all methods will return undef.

METHODS

Top

user_fullname USER

Return's the user's full (real) name if possible.

user_logon_server USER

Returns the logon server of USER if possible.

AUTHOR

Top

Burak Gursoy <burak@cpan.org>.

COPYRIGHT

Top

LICENSE

Top

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.12.2 or, at your option, any later version of Perl 5 you may have available.


Sys-Info-Driver-Windows documentation Contained in the Sys-Info-Driver-Windows distribution.

package Sys::Info::Driver::Windows::OS::Net;
use strict;
use warnings;
use Win32;
use Sys::Info::Constants qw( WIN_USER_INFO_LEVEL );

our $VERSION = '0.78';

BEGIN {
    if ( ! Win32::IsWin95() ) {
        # Win32API::Net: 0.13  Thu Sep 17 19:35:20 1998
        # Some changes : 0.15  Sat Sep 25 15:53:02 1999
        # seems OK ot use.
        require Win32API::Net;
        Win32API::Net->import( qw() );
    }
}

sub _user_get_info {
    return +() if Win32::IsWin95();
    my $self   = shift;
    my $user   = shift || return;
    my $server = Sys::Info::Driver::Windows::OS->node_name();
    my %info;
    Win32API::Net::UserGetInfo( $server, $user, WIN_USER_INFO_LEVEL, \%info );
    return %info;
}

sub user_fullname {
    my $self = shift;
    my $user = shift || return;
    my %info = $self->_user_get_info( $user );
    return $info{fullName};
    # $info{comment}
}

sub user_logon_server {
    my $self = shift;
    my $user = shift || return;
    my %info = $self->_user_get_info( $user );
    return $info{logonServer};
    # $info{comment}
}

1;

__END__