我曾经和你遇到过同样的问题,现在我找到了解决方法,这与提供的插件项目中的新"文件属性"条目有关。
如果您打开此文件(在我的情况下称为"[应用程序名称] - For Testing.AddIn"),您将看到包含XML标记的内容,例如AddIn友好名称、描述等。
对于我来说,我发现我立即重命名了我的项目的输出程序集,而这与此属性文件中找到的不匹配:
<Extensibility xmlns="http://schemas.microsoft.com/AutomationExtensibility">
<HostApplication>
<Name>Microsoft Visual Studio</Name>
<Version>11.0</Version>
</HostApplication>
<Addin>
<FriendlyName>My Addin</FriendlyName>
<Description>My Addin description.</Description>
**<Assembly>E:\Workspaces\Scratch\MyApp\bin\MyApp.VisualStudio.Addin.dll</Assembly>
<FullClassName>MyApp.VisualStudio.Addin.Connect</FullClassName>**
<LoadBehavior>1</LoadBehavior>
<CommandPreload>1</CommandPreload>
<CommandLineSafe>0</CommandLineSafe>
</Addin>
我检查了程序集和类名,修正了它们,保存文件后点击调试,一切都重新开始运作了!希望这能帮到你……
看起来这个问题有不同的解决方案,但这个最终帮助了我:
<LoadBehavior>1</LoadBehavior>
改为<LoadBehavior>0</LoadBehavior>
并将其手动放入C:\Users[UserName]\Documents\Visual Studio 2012\Addins完整的AddIn文件:
<?xml version="1.0" encoding="UTF-16" standalone="no"?>
<Extensibility xmlns="http://schemas.microsoft.com/AutomationExtensibility">
<HostApplication>
<Name>Microsoft Visual Studio</Name>
<Version>11.0</Version>
</HostApplication>
<Addin>
<FriendlyName>[Friendly Assembly Name]</FriendlyName>
<Description>[Description of the Addin]</Description>
<AboutBoxDetails>[About details]</AboutBoxDetails>
<Assembly>[Full path to the binary e.g. C:\Test\debug\test.dll]</Assembly>
<FullClassName>Test.Connect</FullClassName>
<LoadBehavior>0</LoadBehavior>
<CommandPreload>1</CommandPreload>
<CommandLineSafe>0</CommandLineSafe>
</Addin>
</Extensibility>
我曾遇到类似的问题......为此苦恼了很长时间,最终试验性地向项目中添加其他配置(配置管理器)和更改框架,结果不可思议地解决了其中一个问题。(我认为可能是框架的问题,尽管这没有任何意义。)
我并不是说同样的方法适用于你。
这个试验并不是真正的随机试验:我从网上找到了一个“可调试”的插件,并比较了项目、解决方案和所有其他文件中的每一项,以找出可能不同的地方。这是我的真正建议。
如果所有其他方法都失败了,您还可以尝试手动附加调试器,看看是否能够通过这种方式取得进展。[虽然对我来说没用,但它可能提供有价值的信息,而且......并非所有的错误都是相同的。]