jun*_*ole 4 debugging vsix visual-studio-2013
我已经阅读了如何调试Visual Studio扩展.
事实上,VS2013会自动设置扩展项目.
我有许多扩展(也是附加组件等等:Resharper,OzCode,GitExtensions ..).显然,所有这些都有缓慢的加载时间.
有没有办法在"干净"的Visual Studio上运行扩展调试会话?只是vanilla:没有安装,除了调试下的扩展.
编辑:只是想清楚一点:resharper并没有在实验蜂巢中加载自己,但其他一些扩展也是如此
Iga*_*nik 11
欢迎来到Visual Studio可扩展性的精彩世界!
为了为任何严格的扩展开发准备环境,您需要做几件事,包括移动已安装的扩展和更改Visual Studio配置文件.以下是有关该过程的简要说明:
在进一步研究之前,这里是每个扩展开发人员需要拥有的必要"知识":
前两篇文章相当陈旧,但它们仍然掌握着至关重要的信息.在Visual Studio 2012及以上,VSIX发现过程微微一变,让Visual Studio中并没有重建每次启动包缓存.要重建包缓存,请从提升中运行特定版本的Visual Studio开发人员命令提示符处:
devenv /Setup
Run Code Online (Sandbox Code Playgroud)
或使用无证件命令:
devenv /updateconfiguration
Run Code Online (Sandbox Code Playgroud)
它不需要提升,而是告诉Visual Studio在下次重启时刷新其包缓存.
在大多数情况下,安装所有扩展(如ReSharper的,OzCode,从画廊其他扩展)默认情况下将安装自己的每台机器,通过将自己%VSINSTALLDIR%\Common7\IDE\Extensions
.请记住,默认的pkgdef搜索路径(由定义devenv.pkgdef
)是:
"PkgDefSearchPath" = $ApplicationExtensionsFolder$;$RootFolder$\Common7\IDE\CommonExtensions;$RootFolder$\Common7\IDE\devenv.admin.pkgdef;"
Run Code Online (Sandbox Code Playgroud)
这意味着,无论何时在任何配置单元中启动Visual Studio,它都将首先查看已安装扩展的每台计算机位置,然后加载它们.每当您创建一个新的VSIX项目时,默认设置是在/RootSuffix Exp
配置单元中启动它,它仍将首先尝试加载每台计算机的扩展.
这让我回答你的问题.
为了防止在其他蜂箱装的扩展,需要将它们转移到以每个蜂巢的位置:%LOCALAPPDATA%\Microsoft\VisualStudio\<vsVersion><hive>\Extensions
.Visual Studio(2013及更高版本)的更高版本允许您从Visual Studio设置执行此操作,但您需要以管理员身份运行Visual Studio才能工作:
但是,不是以管理员身份运行,而是可以修改默认包搜索路径,以在其中包含每用户位置.然后,手动将扩展名移动到该新位置.
这是你做的:
devenv.pkgdef
位于Visual Studio安装目录中的文件,例如`C:\ Program Files(x86)\ Microsoft Visual Studio 14.0\Common7\IDE\devenv.pkgdefPkgDefSearchPath
添加$AppDataLocalFolder$\Extensions;
为第一个值$ApplicationExtensionsFolder$
,所以它看起来像这样:现在,您可以转到该Common7\IDE\Extensions
文件夹,并将这些扩展名的目录移动到每个用户的位置.例如,如果您想在Visual Studio 2015中移动NCrunch,请获取整个文件夹Remco Software
,然后将其移至%LOCALAPPDATA%\Microsoft\VisualStudio\14.0\Extensions
.
最后,通过运行上面两个命令之一刷新Visual Studio包缓存.当您使用Visual Studio时,它仍会加载扩展,但每当您运行另一个配置单元(Exp或任何其他配置单元)时,将不会加载那些每用户扩展.
它似乎是一个涉及的过程,但你只需要做一次,而只是为了"巨大的"扩展(主要是ReSharper).请注意,从v9开始,ReSharper会自行安装,因此您甚至不必再这样做了!
很抱歉很长的解释,希望有所帮助!
归档时间: |
|
查看次数: |
1399 次 |
最近记录: |