如何在 Visual Studio 2015 年创建的 VSIX 中调试 Visual Studio 包

How to debug a Visual Studio Package in a VSIX created in Visual Studio 2015

我无法在最简单的 VSIX 项目中调试最简单的 VS 包。

重现步骤:

  1. 创建 VSIX 项目:文件/新建/项目/可扩展性/VSIX 项目

  2. 添加Visual Studio包:右键单击解决方案资源管理器中的项目节点和select 添加/新项目/可扩展性/Visual Studio包裹

  3. 打开新建的包文件(VSPackage1.cs),在Initialize()的第一行第68行打断点,base.Initialize()

  4. F5开始调试

这将启动一个 Visual Studio 2015 的实验实例,安装了软件包(在 工具/扩展和更新... 中确认),但断点被禁用:

以上步骤来自新创建的 VSIX 项目的入门指南 (index.html),因此应该有效。

附加信息:

所有这些似乎都表明 VS 包没有得到初始化,尽管它显然已安装。我错过了什么?如果相关,here's the source code of the VS Package, and here 是整个虚拟项目。

如果您需要更多信息,请告诉我。

VSPackages are loaded into Visual Studio only when their functionality is required. For example, a VSPackage is loaded when Visual Studio uses a project factory or a service that the VSPackage implements. This feature is called delayed loading, which is used whenever possible to improve performance.

要在 VS 启动时自动加载包,通常将 Provider AutoLoad 属性添加到主包 class。

有关详细信息,请参阅 Loading VSPackages 文档。

在这里补充一下其他答案,OP实际问题的解决方案是:

忽略该消息,不要担心。这些符号现在 未加载,但它们将在准备好命中断点时加载。