About This File
_cFileSelectFolder() is intended as a replacement for native FileSelectFoldeer() for selecting folders: It implements the left pane of FileSelectFolder(), and goes beyond FileSelectFolder() in several ways.
• It is user friendly and designed to be easy to use;
• Its GUI can be placed anywhere, including centred on another window;
• It neither needs nor uses CLSIDs;
• It checks calling parameters rigorously, either showing a user error message in a dialog or by returning the message and setting @error to 1.
• For local and mapped drives, it accepts file specifications with drives that can be drive letters, drive labels, or both,
• For local and mapped drives, it always returns drive letter:\ ...\ so its output is compatible with native AutoIt functions.
• For UNC paths, it returns \\computer\share\...\
• For unmapped drives on computers on the network, it offers a shortcut to shares.
The initial display can be:
• The Desktop hierarchy with Desktop at the top
• Partial Desktop hierarchy with any other Desktop item at the top, with or without local/mapped drives and file folders, or remote shares and file folders (as appropriate),
• Local/mapped drives and file folders, or
• Remote shares and folders.
The script and example scripts are in the zip file. Documentation beyond what is in the UDF header is in the PDF file, cFileSelectFolder 1_1_0.pdf.
Comments and suggestions are most welcome.
What's New in Version 1.1.0
1.0.0 First release to AutoIt forum
1.0.1 Fixed bug in InitializePerDesktop() $g_sFSF_PreTree that caused ‘Network’ to fail
1.0.2 Added in-script documentation
1.0.3 InitializePerHybrid(): Shows folder icon for $sRoot ending with folder
1.0.4 InitializePerHybrid() > Fixed share name bug
1.1.0 Now always returns selection path ending with \ : a script-breaking change
Checks $sExclFolders parameter, removing spaces around | separators
Faster checking of $sRoot parameter with removal of spaces around \ separators
When $sRoot parameter ends with folder that contains no folders, shows this in treeview