Interop type 'ProjectKinds' cannot be embedded. Use the applicable interface instead
自然,我用谷歌搜索,几乎所有的SO answers建议去项目参考-在我的情况下是envDTE80-并将“嵌入互操作类型”设置为false。但是我已经检查过了,它不能解决问题。
我还检查了“相似”引用(EnvDTE,EnvDTE100和EnvDTE90),并且它们的“嵌入互操作类型”都设置为false。
我想做的代码是:
private static string test = ProjectKinds.vsProjectKindSolutionFolder;
编辑#1:我还检查了.csproj并确认该属性为false
<Reference Include="EnvDTE80, Version=8.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<EmbedInteropTypes>False</EmbedInteropTypes>
</Reference>
编辑#2:微软自己似乎建议使用一种.. Hacky解决方案作为最后的手段。在我看来似乎并不干净,但最终还是可以使用。
在当前的VSIX项目中,出现以下错误:无法嵌入互操作类型'ProjectKinds'。改用适用的界面自然地我用谷歌搜索,几乎所有的答案都建议...