c# - Roslyn 分析器是否支持 x64 构建配置?

标签 c# 64-bit roslyn analyzer buildconfiguration

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

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

Unable to load Analyzer assembly C:...\TestAnalyzer.dll: Could not load file or assembly 'file:///C:\Users...\TestAnalyzer.dll' or one of its dependencies. An attempt was made to load a program with an incorrect format.

在使用 x86 编译时添加相同的分析器效果很好。

最佳答案

Roslyn 并不关心分析器的位数;他关心的是分析器的位数。它只是加载 .Net 程序集。

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

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


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

关于c# - Roslyn 分析器是否支持 x64 构建配置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34536441/

相关文章:

roslyn - 当解决方案包含具有不同编译选项的项目时如何使用 Roslyn

c# - 如何解决这个 "error in your SQL syntax"

c# - 在 WCF 回调中收到的消息乱序

c# - 为什么 Except 函数应用 Distinct?

c - C 中的按位异或使用 64 位而不是 8 位

c - 在 64 位 Windows 上使用 vsnprintf 时出现问题

c++ - 在c++中使用x64系统和x86应用程序分配大内存

c# - 抑制 Visual Studio 2015 中的特定分析错误

c# - Roslyn 编译器用零优化函数调用乘法

c# - 以编程方式更改 Excel 行或列的高度