My code processes all the files in a folder on a Windows box. I want to offer the user (who happens to also be me) the option to select the folder to be processed, using the standard File Chooser dialog.
I am trying to use the GetOpenFileName function to make this happen. (I am actually calling it from Python via pywin32, but that shouldn't be relevant.)
I can get it to select a particular file, but I can't see any options to let the user select a folder instead.
Is there a flag combination I haven't understood, am I calling the wrong function entirely or is there another idiom for doing this?
Unfortunately, I think you're calling the wrong function entirely. It's been a while since I've done Win32 gui stuff.. but I seem to recall that there was a different way of bringing up a "select directory" box. It wasn't a straight Win32 function, but was some shell API function that required a whole heap of code to do the simplest thing.
Update: A bit of google reveals the SHBrowseForFolder function.
Update two: And here is an example for Python.
As Greg mentions, the function you want is a shell function. The specific function you need is SHBrowseForFolder
, which is pretty messy to call. There's also PyWin32 documentation for it which mentions the browse_for_folder.py
sample.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With