我正在尝试开发我的第一个 visual studio 扩展项目,我安装了 VS10 SDK 并且能够创建一个新项目并且可以很好地构建它,但是当我尝试调试时未加载符号。我知道我可以调试到 VSIX 项目,因为我已经在线下载了一个示例项目并且它的符号被加载并且断点被命中 http://weshackett.com/2009/11/configure-vsix-project-to-enable-debugging/ ). 所以一定是与我创建 VSIX 项目的方式有关(也许!)。 我注意到的一件事是 dll 和文件没有被复制到本地“应用程序数据”区域,只有 list 被复制,而对于示例项目,所有文件都被复制,包括 dll。我比较了两者之间的项目设置,它们都是相同的。 我希望这是有道理的,如果我能提供更多细节,请告诉我...
最佳答案
好的,我设法让它工作了。为此,我必须卸载 vsix 项目并将文件编辑为 XML 文档。
从项目文件中删除以下行:
<IncludeAssemblyInVSIXContainer>
false
</IncludeAssemblyInVSIXContainer>
<IncludeDebugSymbolsInVSIXContainer>
false
</IncludeDebugSymbolsInVSIXContainer>
<IncludeDebugSymbolsInLocalVSIXDeployment>
false
</IncludeDebugSymbolsInLocalVSIXDeployment>
<CopyBuildOutputToOutputDirectory>
false
</CopyBuildOutputToOutputDirectory>
<CopyOutputSymbolsToOutputDirectory>
false
</CopyOutputSymbolsToOutputDirectory>
或将它们设置为真:
<IncludeAssemblyInVSIXContainer>
true
</IncludeAssemblyInVSIXContainer>
<IncludeDebugSymbolsInVSIXContainer>
true
</IncludeDebugSymbolsInVSIXContainer>
<IncludeDebugSymbolsInLocalVSIXDeployment>
true
</IncludeDebugSymbolsInLocalVSIXDeployment>
<CopyBuildOutputToOutputDirectory>
true
</CopyBuildOutputToOutputDirectory>
<CopyOutputSymbolsToOutputDirectory>
true
</CopyOutputSymbolsToOutputDirectory>
如果它们不存在,则将它们添加到 ... 节点下。
删除这些行并重建解决方案后,dll 和 pdb 现在已按预期复制到 bin\debug 文件夹以及“AppData\Local\Microsoft\VisualStudio\10.0Exp\Extensions\”文件夹。
关于c# - 无法调试 VSIX 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7767249/