96

有没有办法用VS2010的图标替换VS2012解决方案资源管理器的图标?至少“文件夹”图标:(

4

4 回答 4

52

这是我安装的 VS2012 的照片,它几乎看起来像我们都习惯的熟悉的 2010。这让我感觉又正常了!

在此处输入图像描述

这正是我如何一步一步地做到这一点的:

1) 关闭 Visual Studio 的所有实例

2)下载vsip并将其解压缩到临时目录。(截至 2013 年 1 月 3 日,当前版本为 1.5.2)

3)使用“以管理员身份运行”打开命令提示符

4) 转到临时目录并运行 VSIP.exe - 这将运行一个接受命令的交互式程序。
  4a) 键入“ backup --version=2012 ” - 这将备份您所有的 VS2012 UI dll,以防万一出现问题并且您想卸载 VSIP。
  4b) 键入“ extract ” - 这将从您安装的 VS2010 中提取所有旧图标(根据 VS2010 许可证,VSIP 无法分发这些图标,因此我们必须进行本地安装才能从中提取它们)。
  4c) 键入“ inject ” - 这会将上一步中的所有旧 2010 图标注入 VS2012 DLL。
  4d) 输入“菜单 -n

5)下载并安装NiceVS - 不要下载日期为 10/14 的版本,否则您将丢失图标。截至 2013 年 1 月 3 日,我下载了名为"NiceVS.0.8.1.1 Beta.Full.vsix"的文件。

6)下载并安装VS2012 颜色主题编辑器- 下次启动 VS2012 时,从颜色选择窗口中选择“蓝色”主题。

现在你应该有一个很好的 VS2012 安装,看起来像我上面的屏幕截图!需要三个不同的应用程序来修补这个可怕的 UI,但现在它肯定是可行的!如果您没有将 VS2010 与 VS2012 安装在同一台机器上,那么您必须在装有 VS2010 的机器上运行步骤 4b,然后将 VSIP Images 目录复制到您的 2012 开发机器上。

更新:如果您在运行这些步骤安装“VS 2012 Update 1” ,您将需要从 VSIP 管理员提示符重新运行步骤 4c(如果您没有保留 VS2010 图像的提取,则需要重新运行步骤 4)。文件菜单图标和配色方案保持不变,但更新将解决方案资源管理器中的图标恢复为丑陋的图标。重新运行 VSIP 注入可以立即修复它!

于 2013-01-03T08:05:53.000 回答
50

简短答案: 将旧图标破解到 2012 年。

Visual Studio 图标修补程序 - http://vsip.codeplex.com

长答案: 目前,使用插件执行此操作是不可能的。我一直无法找到任何内置的方法来实现这一点,并且切换到 WPF 使得破解变得更加困难。

这个应用程序只是从 Visual Studio 2010 中的非托管 DLL 中提取图像资源,并将它们注入到 Visual Studio 2012 的 DLL 中。托管资源要复杂得多,并且尚未添加,尽管我已经得到了一些工作.

由于在检测到深色背景颜色时图标颜色如何反转,初始版本不适用于具有深色树视图背景颜色的主题。这在最新版本中变得更糟,因为现在包含菜单和工具栏图标。我正在使用蓝色主题运行它,它看起来不错。

破解图标反转的一种方法是编辑所有提取的图像,在图像映射中每个图标的右上角添加一个青色像素。这会将它们排除在反转过程之外。不过我还没有尝试过,因为我很早就在处理无法正确显示的图像时遇到了问题。您可以尝试一下,但这将是相当手动且耗时的,甚至可能无法正常工作。

于 2012-09-02T03:30:51.383 回答
5

看看这个线程: 解决方案资源管理器 - 我的文件夹的自定义图标

我认为它也适用于vs2012

如果没有 -> 您可以使用 ResHack(或 Resource Hacker)手动查找解决方案资源管理器的图标资源并简单地替换它!

于 2012-08-31T08:12:18.137 回答
4

这是解决方案:

Visual Studio 图标修补程序 http://vsip.codeplex.com/

来自 VSIP 网页的说明:

项目描述 Visual Studio Icon Patcher 允许您使用 Visual Studio 2010 中的图标更新 Visual Studio 2012。

除非有人能找到通过插件更改图标的方法,否则更改图标的唯一方法是通过资源修补 Visual Studio 使用的 DLL。有许多托管和非托管 DLL 包含用于设置应用程序样式的位图和 PNG。目前只有非托管 DLL 是此过程的一部分,托管 DLL 有望很快推出。

此项目不分发任何图像。您需要同时安装 Visual Studio 2010 和 2012 才能使用它。

更新
我刚刚使用Visual Studio 2012 Update 2测试了VSIP,它可以完美运行 :-)

于 2012-09-19T16:00:26.680 回答