2

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

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

无法加载分析器程序集 C:...\TestAnalyzer.dll:无法加载文件或程序集“file:///C:\Users...\TestAnalyzer.dll”或其依赖项之一。试图加载格式不正确的程序。

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

4

1 回答 1

2

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

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

如果你制作了一个仅 x64 的分析器,它可以从 Roslyn 命令行完美运行,但 VS 将无法加载它。


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

于 2015-12-30T20:43:31.673 回答