我想向仅包含x64项目的解决方案中添加一个分析器,并且该分析器仅适用于该解决方案的项目。我的分析仪可以有x64构建配置吗?

如果尝试这样做,分析器将使用x64进行编译,但是当我尝试将分析器添加到x64项目中时,会收到类别为Roslyn.HostError的IntelliSense警告CS8034:


  无法加载分析器程序集C:... \ TestAnalyzer.dll:无法
  加载文件或程序集'file:/// C:\ Users ... \ TestAnalyzer.dll'或一个
  它的依赖关系。试图用以下命令加载程序
  格式错误。


使用x86编译时添加相同的分析器可以正常工作。

最佳答案

Roslyn不在乎分析仪的位数。它只是加载.Net程序集。

但是,Visual Studio本身是一个x86进程。

如果您制作了仅x64的分析器,则可以在Roslyn命令行上完美运行,但是VS无法加载它。



注意,分析器的位数与项目的位数无关。分析器将加载到编译器中,而不是在运行时加载。

10-02 01:23
查看更多