10

使用以下

explorer.exe /select, "c:\path\to\file.txt"

我可以打开 Windows 资源管理器并选择文件。在 Delphi 中,我这样做是为了选择“Parm”文件:

ShellExecute(Application.MainForm.Handle, 'OPEN', PChar('explorer.exe'), PChar('/select,"' + Parm + '"'), nil, SW_NORMAL);

它有效。我的问题是:如果我在最近打开的资源管理器中选择不同的文件(单击不同的文件),然后调用上面的代码,则不会再次选择“Parm”文件。有趣的是,有些程序会再次选择文件。例如,iTunes 总是选择所需的文件。

有没有人知道如何让资源管理器总是选择指定的文件?

4

1 回答 1

14

这是将 /select 开关与 explorer.exe 一起使用的已知限制,如果父文件夹尚未打开,它将仅选择特定文件。

您必须改用SHOpenFolderAndSelectItems 之类的 API 调用。此功能还允许多选。

于 2010-11-27T13:13:43.727 回答