Visual studio 2010 无法引用VSIX部署模板中的向导程序集
我正在尝试为VisualStudio2010创建一个包含一些项目模板的VISX扩展。这些模板不是很复杂,但我想在创建过程中通过向导为它们公开一些额外的配置。我已成功设置VISX软件包,将模板部署到VS2010中所需的目录结构中,但在尝试配置和运行向导时,我收到一个错误,我在创建模板时会执行以下操作: 错误:此模板试图加载组件程序集 'My.Assembly,版本1.0.0.0,区域性=中性,PublicKeyToken= 我目前的配置如下:Visual studio 2010 无法引用VSIX部署模板中的向导程序集,visual-studio-2010,templates,wizard,Visual Studio 2010,Templates,Wizard,我正在尝试为VisualStudio2010创建一个包含一些项目模板的VISX扩展。这些模板不是很复杂,但我想在创建过程中通过向导为它们公开一些额外的配置。我已成功设置VISX软件包,将模板部署到VS2010中所需的目录结构中,但在尝试配置和运行向导时,我收到一个错误,我在创建模板时会执行以下操作: 错误:此模板试图加载组件程序集 'My.Assembly,版本1.0.0.0,区域性=中性,PublicKeyToken= 我目前的配置如下: 所有项目都位于同一个解决方案中 VISX项目包括对包
- 所有项目都位于同一个解决方案中
- VISX项目包括对包含向导的项目和每个模板的项目引用
- 每个模板都是从一个项目模板(…令人困惑的术语)构建的
- 它们通过.vsixmanifest设计器作为内容添加,并引用项目
- 每个.vstemplate文件都有一个WizardExtension元素,指向IWizard实现并包含程序集
- 向导程序集已签名
使用脚本是我们以前做过的,但我想尝试使用VISX包让事情变得更干净一点。我希望避免这种情况,但如果必须编写VISX脚本才能将模板安装到GAC,我可以这样做。通过VSIX扩展部署基于向导的项目模板时,最好在.vstemplate中使用短名称程序集。这可以避免GAC部署 在您的情况下,它应该是:
<WizardExtension>
<Assembly>My.Assembly</Assembly>
<FullClassName>My.Assembly.Wizard</FullClassName>
</WizardExtension>
我的.大会
My.Assembly.Wizard
我正在使用VS2015,时断时续地面对这个问题。当我开始用向导实现构建VSIX项目时,在一段时间(4-6周)内,一切都很正常,但突然它停止了工作。几周后,它将重新开始工作,并在没有通知的情况下停止工作。我花了很长时间才找到解决办法(仍然不知道它为什么突然停止)
这就是我的VSIX项目的构建方式
我遇到了同样的问题,但当我更新向导项目的
AssemblyVersion
时,我的问题就暴露了出来。我检查了清单文件中的版本,它们应该匹配
我只是进入C:\Users\Albert\AppData\Local\Microsoft\VisualStudio\16.0\u c34033cexp\Extensions
,找到了我的扩展并将其删除。现在它又起作用了
(请注意,我确实在AssemblyInfo文件中找到了一些其他人,因为我更改了公司名称等,所以可能是周围的旧公司也造成了这种情况)很抱歉,这花了这么长时间才恢复,直到我解决了问题后,我才真正看到答案。这确实是这个问题的一部分,尽管还存在一些其他配置问题(即需要通过UI添加项目引用,出于某些原因,手动编辑配置文件将不起作用)。我接受,因为这是主要问题。如果你愿意,我想你可以提供任何详细信息供讨论。至少今年我为我们公司的产品做初学者工具包时遇到了很多问题。这对我没有帮助。一切都很顺利,我突然发现了这个错误。我已经尝试重新启动了几乎所有在我控制下的东西。非常感谢您的任何意见。
<WizardExtension>
<Assembly>Test.Template.TemplateInstallerWizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=30ab381f68dc4f5e</Assembly>
<FullClassName>Test.Template.TemplateInstallerWizard.WizardImplementation</FullClassName>
</WizardExtension>
<WizardExtension>
<Assembly>Test.Template.TemplateInstallerWizard, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null</Assembly>
<FullClassName>Test.Template.TemplateInstallerWizard.WizardImplementation
%appdata%\..\Local\Microsoft\VisualStudio\14.0\Extensions\<some_temp_folder>