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は常に目的のファイルを選択します。

Explorerが常に指定されたファイルを選択するようにする方法の手がかりを持っている人はいますか?

4

1 に答える 1

14

これは、explorer.exeで/ selectスイッチを使用する際の既知の制限であり、親フォルダーがまだ開いていない場合にのみ特定のファイルを選択します。

代わりに、 SHOpenFolderAndSelectItemsなどのAPI呼び出しを使用する必要があります。この機能により、複数選択も可能になります。

于 2010-11-27T13:13:43.727 に答える