在Windows 10中,可以通过编程方式从快速访问中删除最近使用的文件。下面是一种实现方法:
using System;
using System.Runtime.InteropServices;
Main
方法中,添加以下代码:static void Main(string[] args)
{
string filePath = "C:\\path\\to\\file.txt"; // 要删除的文件路径
SHAddToRecentDocs(SHARD.SHELLITEM, filePath); // 将文件添加到最近使用的文件列表中
Console.WriteLine("文件已添加到最近使用的文件列表中。");
RemoveFromRecentDocs(filePath); // 从最近使用的文件列表中删除文件
Console.WriteLine("文件已从最近使用的文件列表中删除。");
Console.ReadLine();
}
Main
方法外部,添加以下代码来定义SHAddToRecentDocs
和RemoveFromRecentDocs
方法:[DllImport("shell32.dll")]
private static extern void SHAddToRecentDocs(SHARD uFlags, string pv);
[DllImport("shell32.dll")]
private static extern void SHUpdateRecycleBinIcon();
[DllImport("shell32.dll")]
private static extern void SHChangeNotify(int eventId, int flags, IntPtr item1, IntPtr item2);
private enum SHARD
{
SHELLITEM = 0x00000008
}
private static void RemoveFromRecentDocs(string filePath)
{
SHChangeNotify(0x8000000, 0x1000, IntPtr.Zero, IntPtr.Zero); // 刷新Shell图标缓存
SHAddToRecentDocs(SHARD.SHELLITEM, filePath); // 将文件添加到最近使用的文件列表中
SHUpdateRecycleBinIcon(); // 更新回收站图标
}
这是通过调用Windows Shell API来实现的。SHAddToRecentDocs
函数用于将文件添加到最近使用的文件列表中,SHUpdateRecycleBinIcon
函数用于更新回收站图标,SHChangeNotify
函数用于刷新Shell图标缓存。通过调用SHAddToRecentDocs
函数两次,首先将文件添加到最近使用的文件列表中,然后再次添加以将其删除。
请注意,这个方法只会从快速访问中删除最近使用的文件,而不会删除实际的文件。如果需要删除实际的文件,可以使用File.Delete
方法或其他文件操作方法来实现。
推荐的腾讯云相关产品:腾讯云对象存储(COS),它提供了高可靠、低成本的云端存储服务,适用于各种场景的文件存储需求。您可以通过以下链接了解更多信息:腾讯云对象存储(COS)。
领取专属 10元无门槛券
手把手带您无忧上云