How do I display Explorer with a file selected? How do I display Explorer with a file selected? shell shell

How do I display Explorer with a file selected?


This function opens explorer, and selects the specified file:

uses ShellAPI, ...;procedure TForm1.ShowFile(const aFileName:String);begin  ShellExecute(Handle, 'OPEN', PChar('explorer.exe'), PChar('/select, "' + aFileName + '"'), nil, SW_NORMAL)end;procedure TForm1.ShowFolder(const aPath:String);begin  ShellExecute(Handle, 'OPEN', PChar('explorer.exe'), PChar('/root, "' + aPath + '"'), nil, SW_NORMAL) end;

Or is this the "commandline" that you didn't want to use?


You need SHOpenFolderAndSelectItems. This question was early discussed here - Programmatically selecting file in explorer
Dont forget to call CoInitialize before first use of SHOpenFolderAndSelectItems


You're looking for IExplorerBrowser::BrowseToObject, I think. Based on the very vague, non-specific question and comments with no additional information when asked for it, it's the best guess I can provide. IExplorerBrowser has a lot of additional functionality you may want to explore as well, in case this specific method isn't exactly what you're looking to find.