删除Visual Studio 2010上的查找/替换历史记录

Ale*_*res 18 replace visual-studio-2010

我在网上四处寻找一种方法来删除VS 2010的查找/替换功能的历史,但我得到的只是对以前版本(VS 05,VS 08等)有效的答案.有谁知道2010版本有多清楚?谢谢!

Ale*_*Aza 24

打开regedit.exe,去HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\Find.删除开头的所有键FindReplaceFind1,Find2,Replace1,等你可以删除历史记录Find仅或Replace只,或仅特定删除Find,如果你想.

HKEY_CURRENT_USER 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.

[编辑]

一步步:

  1. 制作快速控制台应用程序:

    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);
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 编译它并关闭VS.

  3. 运行已编译的exe.
  4. 打开VS - 查找历史记录为空.

请记住,VS缓存此FindReplace名单.当您关闭VS时,它会将列表保留到注册表中.因此,如果您清理列表然后重新启动VS,您将看不到任何效果,因为VS在关闭时恢复了列表.所以你需要关闭VS,清除列表,打开VS.

  • 确保在进行这些注册表编辑之前关闭Visual Studio. (2认同)

Vil*_*lx- 7

我的2美分 - 如果一切都失败了,那就试着自己搜索很多不同的术语.它记住的搜索次数有限制,最终您自己的搜索会将不需要的搜索从列表中删除.


Zin*_*gam 6

对于 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

提炼:

  1. 关闭 Visual Studio
  2. 启动Regedit.exe
  3. 选择 HKEY_LOCAL_MACHINE 节点
  4. 从主菜单中,选择 File -> Load Hive... 并选择私有注册表文件。该文件存储在本地应用程序数据 %localappdata%\Microsoft\VisualStudio\[config]\privateregistry.bin 中,其中 [config] 对应于您要浏览的配置配置单元
  5. 它将提示输入名称 - 代表将显示在(例如,IsolatedHive)下的名称
  6. 现在您应该能够浏览您创建的配置单元下的注册表 现在搜索键“查找”并删除您需要删除的任何内容。
  7. 在启动 Visual Studio 之前,您需要卸载它:在尝试运行 VS 之前从主菜单 File -> Unload Hive(否则 regedit 保持文件锁定,Visual Studio 将无法启动)