【问题标题】:How to run Code Analysis on x64 Project in Visual C++?如何在 Visual C++ 中对 x64 项目运行代码分析?
【发布时间】:2018-04-08 18:19:57
【问题描述】:

我正在尝试在我的 x64 VC++ 项目上运行 Visual Studio 2015 的代码分析。但是我收到以下错误:

Error   C1250   Unable to load plug-in 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\\bin\localespc.dll'

我在启动 IDE 之前通过运行批处理脚本“vcvarsall.bat amd64”来激活 Visual Studio 的 x64 工具集。之后 Visual Studio 使用“/useenv”选项运行。

查看VC++环境变量时,可以看到PATH变量中包含以下路径:

C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\BIN\amd64

我如何告诉 Visual Studio 从那里使用代码分析器 (localespc.dll) 而不是它显然尝试使用的 x86 版本(根据错误消息)。

非常感谢您的帮助!

【问题讨论】:

    标签: c++ visual-studio visual-c++ visual-studio-2015 code-analysis


    【解决方案1】:

    在您的项目文件中设置以下属性:<PreferredToolArchitecture>x64</PreferredToolArchitecture>

    这告诉 Visual Studio 使用 64 位版本的各种工具,包括代码分析。我发现How to make Visual Studio use the native amd64 toolchain 对这个话题很有帮助。

    请注意,重命名 localespc.dll 不再解决 Visual Studio 2017 的问题。似乎设置 PreferredToolArchitecture 是 Microsoft 的预期方式。

    【讨论】:

    • 这在 VisualStudio 2017 上对我不起作用,但您发布的链接有一条关于使用 <UseNativeEnvironment>true</> 的注释,它确实有效。
    【解决方案2】:

    我的 64 位 C++ 项目遇到了同样的问题。我发现只需从 VC\bin 重命名/删除 localespc.dll 就可以使代码分析构建成功并且仍然报告分析警告。似乎如果 VS 在 VC\bin 目录中没有找到这个 dll,那么它不会为 /analyze:plugin 添加编译器开关,但会传递代码分析所需的所有其他开关。

    【讨论】:

    • 感谢您的回答,格兰特!你的解决方案对我有用。
    猜你喜欢
    • 1970-01-01
    • 2011-06-05
    • 1970-01-01
    • 2020-05-10
    • 1970-01-01
    • 2015-11-17
    • 2015-11-15
    • 2010-09-27
    相关资源
    最近更新 更多