我想知道是哪个资源管理器实例导致了打开。我使用以下代码尝试获取启动资源管理器 HWND:
var handle = GetForegroundWindow();
ArrayList selected = new ArrayList();
var shell = new Shell32.Shell();
foreach (SHDocVw.InternetExplorer window in shell.Windows())
{
if (window.HWND == (int)handle)
{
Shell32.FolderItems items = ((Shell32.IShellFolderViewDual2)window.Document).SelectedItems();
foreach (Shell32.FolderItem item in items)
{
selected.Add(item.Path);
}
}
}
不过,我很快意识到它不起作用,因为一旦启动的应用程序获得焦点,它就会成为前台窗口,因此代码将无法运行。任何信息表示赞赏。