Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer
 
PerlMonks  

Re: Copying files to an authenticated Win32 share

by SheridanCat (Pilgrim)
on Sep 13, 2005 at 16:32 UTC ( [id://491620]=note: print w/replies, xml ) Need Help??


in reply to Copying files to an authenticated Win32 share

Since you can map UNC pathnames "anonymously", there's really no reason to find a free drive letter. I use the following in a library I wrote:
sub connect{ my ( $paths, $user, $password, $verbose ) = @_; # Make $paths an array reference, even if it isn't already if ( ref $paths ne "ARRAY") { if( ! ref $paths ){ push my @paths, $paths; $paths = \@paths; }else{ die "You must pass a scalar or array in as first argument +to connect()\n"; } } if( $^O eq 'MSWin32' ){ require Win32::NetResource qw( :DEFAULT GetSharedResources Get +Error AddConnection CancelConnection ); foreach my $path ( @$paths ){ # In case we don't have the leading backslashes, # add them. unless( $path =~ m|^\\{4}| ){ $path =~ s/^\\+//; $path = "\\\\" . $path; } my %resources = ( Scope => RESOURCE_GLOBALNET, Type => RESOURCETYPE_DISK, DisplayType => RESOURCEDISPLAYTYPE_SHARE, RemoteName => $path ); AddConnection( \%resources, $password, $user, 1 ); if( $verbose ){ my $err; GetError( $err ); warn Win32::FormatMessage( $err ); } } }else{ die "Unsupported Operating System: $^O\n"; } }

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://491620]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others wandering the Monastery: (6)
As of 2024-03-29 11:57 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found