引用COM组件 Shell32
Shell32.ShellFolderView desktopFolderView; int hwnd; Shell32.Shell iShell = new Shell32.Shell(); SHDocVw.ShellWindows iWindows = iShell.Windows(); SHDocVw.InternetExplorer iDesktop = iWindows.FindWindowSW(0, null, 8, out hwnd, 1); desktopFolderView = (Shell32.ShellFolderView)iDesktop.Document; List<string> list = new List<string>(); Shell32.FolderItems selItems = desktopFolderView.SelectedItems(); foreach (Shell32.FolderItem fitem in selItems) { // if (fitem.IsFileSystem) // listBox1.Items.Add(fitem.Path); list.Add(fitem.Name); } Title =""+ list.Count +"="+ list[0];
获取资源管理器里选择的文件 :
引用COM组件Microsoft Internet Controls 和 microsoft shell controls and automation 就是 shell32.dll
string filename; string ok = ""; ArrayList selected = new ArrayList(); foreach (SHDocVw.InternetExplorer window in new SHDocVw.ShellWindows()) { Debug.Print(window.LocationURL); filename = Path.GetFileNameWithoutExtension(window.FullName).ToLower(); if (filename.ToLowerInvariant().Contains("desk")) { Debug.Print(window.LocationURL); } if (filename.ToLowerInvariant() == "explorer" || filename.ToLowerInvariant() == "资源管理器") { Shell32.FolderItems items = ((Shell32.IShellFolderViewDual2)window.Document).SelectedItems(); var count = items.Count; foreach (Shell32.FolderItem item in items) { //selected.Add(item.Path); //MessageBox.Show(item.Path); ok= item.Path; } } }
标签:桌面,c#,list,filename,获取,window,Shell32,new,Path From: https://www.cnblogs.com/wgscd/p/17910908.html