【问题标题】:How To Programmatically Execute "Clear File Explorer History"如何以编程方式执行“清除文件资源管理器历史记录”
【发布时间】:2020-11-21 02:00:53
【问题描述】:

我目前正在创建一个 WPF 应用程序,并希望添加一个小功能,即清除 windows 文件资源管理器历史记录。

如果要手动执行此操作,可以通过文件浏览器窗口中的文件菜单, as shown here.

我的目标几乎是以编程方式执行与此按钮相同的操作,但我一直无法找到此操作背后的可执行文件或 user32.dll 方法(如果存在),并且也未能成功找到它背后的完整逻辑(即找到它的目标文件夹和文件),复制它。

你能帮帮我吗?

【问题讨论】:

  • 查看 MS UI 自动化。虽然最初是为测试应用程序而设计的,但它可以用作通用远程控制机制

标签: c# windows


【解决方案1】:

正如 dxiv 所建议的,您可以通过以下方式实现:

enum ShellAddToRecentDocsFlags
{
   Pidl = 0x001,
   Path = 0x002,
   PathW = 0x003
}

[DllImport("shell32.dll", CharSet = CharSet.Unicode)]
private static extern void SHAddToRecentDocs(ShellAddToRecentDocsFlags flag, string path);

// How To Clear Everything
SHAddToRecentDocs(ShellAddToRecentDocsFlags.Pidl, null);

【讨论】:

    猜你喜欢
    • 2016-01-27
    • 2011-04-16
    • 1970-01-01
    • 1970-01-01
    • 2013-09-23
    • 2018-05-05
    • 2011-03-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多