Enhancing the SHBrowseForFolder API Function

This code shows how to use the standard SHBrowseForFolder API function with a callback routine to set the initial directory.

Screen-shot

After reading the MSDN knowledge base article Q179378 "HOWTO: Browse for Folders from the Current Directory", I was able to figure out how to add a callback function that sets the starting directory and displays the currently selected path in the "Browse For Folder" dialog.

I used VB 6.0 (SP3) to compile this code. Should work in VB 5.0. However, because it uses the AddressOf operator this code will not work with versions below 5.0.

This code works in Window 95a so I assume it will work with later versions.


(Tested also under Win98/NT – works fine)


Usage:


    Dim folder as string
    '
    folder = BrowseForFolder(me, "Select A Directory", _
             "C:\startdir\anywhere")
    '
    If len(folder) = 0 then Exit Sub  'User Selected Cancel
    '

Download Zipped Files (5k)

More by Author

Get the Free Newsletter!

Subscribe to Developer Insider for top news, trends & analysis

Must Read