You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows ARM系统下x86/x64.NET应用能否使用ARM版C++ DLL?

解答
  • 核心结论:x86应用无法直接调用ARM原生DLL,进程架构必须与所加载的原生DLL架构完全匹配。
  • 错误原因:你遇到的System.BadImageFormatException,本质是x86的.NET进程(运行在Windows ARM的x86仿真层WoW64中)尝试加载ARM架构的DLL,二者架构不匹配导致加载失败。
  • 可行解决方案:
    1. 切换.NET应用架构:将.NET 7项目编译为ARM64架构(在项目属性的目标平台中选择ARM64),即可正常加载ARM原生DLL。
    2. 适配DLL架构:若要保持.NET应用为x86架构,需将C++原生DLL编译为x86版本,供x86进程加载。

内容的提问来源于stack exchange,提问作者Oblomingo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 18:23:16