Beefy Boxes and Bandwidth Generously Provided by pair Networks
Your skill will accomplish
what the force of many cannot
 
PerlMonks  

Win32 BrowseForFolder

by nikosv (Hermit)
on Apr 05, 2009 at 13:01 UTC ( #755558=snippet: print w/ replies, xml ) Need Help??

Description: Win32 BrowseForFolder. Creates a dialog box that enables the user to select a folder. This small procedure is part of a larger programm that lets you choose a directory and manipulate its contents i.e combines nicely with File::Find
use Win32::API;
use Cwd;

sub choose_dir {
    $SHBrowseForFolder=new Win32::API('shell32.dll','SHBrowseForFolder
+','P','N');
    $SHGetPathFromIDList=new Win32::API('shell32.dll','SHGetPathFromID
+List','NP','N');

my $display="CHOOSE starting directory...";
my $BrowseInfo=pack('LLLpLLLL',0,0,0,$display,0,0,0,0,0);
my $pidl=$SHBrowseForFolder->Call($BrowseInfo);

my $dir=pack('x100');
$SHGetPathFromIDList->Call($pidl,$dir);

$dir =~ s/\0//g;
chdir $dir;
print "current dir: ",cwd();
}

choose_dir;
Comment on Win32 BrowseForFolder
Download Code

Back to Snippets Section

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others cooling their heels in the Monastery: (7)
As of 2014-07-12 19:04 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    When choosing user names for websites, I prefer to use:








    Results (240 votes), past polls