在Visual Studio 2012中更改图标是否可行?

96

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


32
等到VS 2014?也许到那时他们会恢复有用的颜色和图标.... - marc_s
我终于找到了一种方法,可以将图标切换回VS2010中的那些图标!请查看我在 http://computerbeacon.net/blog/visualstudio2010iconsandt 上的博客文章。 - kevin
1
没有运气。VS2013没有彩色图标。唉。 - Raj More
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 dlls,以防出现问题并想要卸载VSIP。
  4b) 输入"extract" - 这将从VS2010安装中提取所有旧的图标(根据VS2010许可证,VSIP不能分发这些图标,因此我们必须有一个本地安装来提取它们)。
  4c) 输入"inject" - 这将从上一步中提取的所有旧的2010图标注入到VS2012 DLL中。
  4d) 输入 "menus -n" - 这将更改菜单,使其不是全大写!

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

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

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

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


4
支持NiceVS。修复这些糟糕的图标是非常必要的。我认为人们担心难以辨认黑色斑点图标的问题,而不仅仅是单调的颜色。但那也很糟糕。可怜的VS2012被丑陋的棍子打击了。 - Shane Castle
2
我必须感谢你。真的。我在“微软风格”下工作了几天,然后决定搜索如何更改它。感谢您提供的出色说明。现在它可以正常工作了,VS 2012(除了其用户界面风格之外)又变得美丽了。非常感谢+1。 - Radim Köhler
值得注意的是,VSIP不支持Express版本。如果你的VS中有任何一个是Express版本,请下载源代码并调整VisualStudio2010.cs和/或VisualStudio2012.cs以硬编码返回这些值(添加另一个值到枚举中,“Express = 4”,并放置像“if(edition == Edition.Express)return“1033” ”用于语言代码和return true用于IsVersionInstalled)。 - GSerg
此外,我还需要清除缓存,删除文件夹:%LOCALAPPDATA%\Microsoft\VisualStudio\12.0\ComponentModelCache,重新启动即可解决问题(运行20123版本)。 - yougotiger
你有适用于VS2013的吗? - Raj More
看起来VSIP不再更新(关于VS2013支持)。我注意到NiceVS在2014年中期收到了一些针对VS2013支持的检查,但自那以后没有发布任何版本。您可能能够从源代码构建,但我不知道当前代码有多稳定。 - EverPresent

50

简短回答: 将旧图标变成2012版。

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

详细回答: 目前,使用插件来实现这个功能是不可行的。我无法找到任何内置方法来实现这一点,而且切换到WPF使得它更难以绕过。

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

最初版本在使用具有深色树视图背景颜色的主题时效果不佳,因为当检测到深色背景颜色时,图标颜色会反转。由于现在包括了菜单和工具栏图标,这种情况甚至变得更糟。我正在使用蓝色主题运行该程序,看起来很好。

解决图标反转的一种方法是编辑所有提取出的图像,将每个图像地图中的图标的右上角添加一个青色像素。这样就可以排除它们不被反转。不过我没有尝试过,因为在处理图像时早期遇到了问题,它们显示不正常。你可以尝试一下,但这会相当繁琐和耗费时间,并且可能无法起作用。


6
太好了,现在在解决方案资源管理器中挑选项目要容易得多了。 - Vman
2
不幸的是,这似乎对解决方案资源管理器中的本机C++图标无效 :( - legalize

5

4

以下是解决方案:

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

来自VSIP网页的描述:

项目描述 Visual Studio图标补丁程序允许您使用Visual Studio 2010中的图标更新Visual Studio 2012。

在有人能够找到通过插件更改图标的方法之前,唯一更改它们的方法是通过资源修补Visual Studio使用的DLL。有许多托管和非托管的DLL包含用于样式化应用程序的位图和PNG。目前,只有非托管的DLL是这个过程的一部分,希望很快就会有托管的DLL。

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

更新
我刚刚测试了VSIPVisual Studio 2012 Update 2,它完美无缺地工作了 :-)


@vman 当然可以,但任何人都可以阅读我的答案,并在阅读4个单词后在5秒钟内找到解决方案。相反,您需要阅读半页文本才能理解被接受的答案。所以,当我阅读问题时,我决定被接受的答案太长了,不能阅读它,于是我发布了我的答案。并不是每个人都有时间去阅读一切,有时你只需要阅读一些单词,然后点击一个链接。 :-) 当然,我非常尊重Brian Surowiec及其答案... 我的答案并不比他的更好,只是不同而已 :-) - Max
3
我为你整理了我的回答 :) - Brian Surowiec
@BrianSurowiec 谢谢,现在完美了!感谢您开发 Visual Studio 图标补丁程序,当我们转换到新的 IDE 时,它将节省我的时间 :) - Max

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接