Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在用 C# 编写一个 .NET 3.5 WPF 应用程序。此应用程序需要能够在其处于前台时从 Windows 资源管理器中获取所选项目。
我已经有了处理全局 Windows 热键的代码,然后检查前台 IntPtr 是否来自资源管理器。如果是这样,我可以获得映射到资源管理器的 System.Diagnostics.Process 对象。
此时,我想从资源管理器中获取所选项目的列表。也许有一个 Windows API 函数我可以调用来执行此操作?
谢谢,
您可以为此使用剪贴板。
按下热键时,模拟 ctrl+c 并从剪贴板获取所选文件的路径。(你也可以备份剪贴板并在之后恢复它,这样如果那里有重要的东西就不会搞砸了)
我能找到的最好的方法是编写一个 shell 扩展来处理这种情况。不幸的是,对于当前版本的 .NET 和 Windows,此功能的大部分现在已被贬值/不推荐使用。
我通过剪贴板查找项目来采取不同的路线。