我环顾四周试图找到一种方法来删除VS 2010的查找/替换功能的历史记录,但我得到的只是对以前版本(VS 05,VS 08等)有效的答案。有谁知道2010版本有多清楚? 谢谢!
答案 0 :(得分:24)
打开regedit.exe
,转到HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\Find
。删除以Find
和Replace
开头的所有密钥,例如Find1
,Find2
,Replace1
等。您只能删除Find
的历史记录或者仅限Replace
,或者只删除特定的Find
,如果您愿意的话。
HKEY_CURRENT_USER
用户是当前登录的用户。
如果您需要清除其他用户的历史记录,则需要转到HKEY_USERS\{UserId}\Software\Microsoft\VisualStudio\10.0\Find
例如HKEY_USERS\S-1-5-21-2705333110-2095705488-3072420928-1000\Software\Microsoft\VisualStudio\10.0\Find
。
<强> [编辑] 强>
步骤一步:
制作快速控制台应用程序:
using Microsoft.Win32;
public static void Main()
{
var findKey = Registry.CurrentUser.OpenSubKey(@"Software\Microsoft\VisualStudio\10.0\Find", true);
findKey.GetValueNames()
.Where(arg => Regex.IsMatch(arg, @"^Find( \d+)?$"))
.ToList()
.ForEach(findKey.DeleteValue);
}
编译并关闭VS。
请记住,VS会缓存此Find
和Replace
列表。当您关闭VS时,它会将列表保留到注册表中。因此,如果您清理列表然后重新启动VS,您将看不到任何效果,因为VS在关闭时恢复了列表。所以你需要关闭VS,清除列表,打开VS。
答案 1 :(得分:7)
我的2美分 - 如果一切都失败了,那就试着自己搜索很多不同的术语。它记住的搜索次数有限制,最终您自己的搜索会将不需要的搜索从列表中删除。
答案 2 :(得分:3)
对于Visual Studio 2017:
http://www.visualstudioextensibility.com/2017/07/15/about-the-new-privateregistry-bin-file-of-visual-studio-2017/ https://github.com/Microsoft/VSProjectSystem/blob/master/doc/overview/examine_registry.md
提取: