[求救]怎么在 arm64 的麒麟 v10 上运行 win32 的 exe

1 天前
 rrubick
前情提要 https://ex.noerr.eu.org/t/1154926#reply49

目前已知项目情况:
1. 没有源码,只有一个文件夹,因为要和硬件交互,内部含有大量 dll ,靠运行一个 32 位的 exe 来启动
2. 基于 .net framework 4.5

已做尝试:

1. 虚拟机方案 qemu + virt-manager

1.1 安装 xp ,并安装 .net framework 4.0, 运行 exe 提示 **不是一个有效的 Win32 应用程序**

1.2 安装 32 位和 64 位 win7 ,给了 4G 或者 8G 内存,卡顿严重。在 32 位上运行 exe 卡住无法打开。AI 说要安装 virtio 驱动,但是即使是管理员身份依然提示没有权限

2. Wine/Wine64 + Box86/Box64

只成功安装了 Box64 ,Box86 安装失败。使用 Box64 无法运行 32 位 exe

3. 求助麒麟技术支持

多位支持说 x86 的虚拟机是装不上的,而事实上我已成功安装


不知道大佬们还是否有别的解决方案
1910 次点击
所在节点    Linux
50 条回复
i8086
1 天前
看了原帖内容,这部分不叫迁移,需要重写。

架构都不一样,兼容做法是还是需要 windows 机器,并不是无脑全部 arm ,找领导沟通吧。

既然人家技术回复不支持,就不要折腾,坑肯定是一大堆的。
doosit
1 天前
试试铠大师,希望可以帮到你
RobinHuuu
1 天前
不是,到底要调用什么硬件,各种虚拟方案能访问到硬件吗?
devtk
1 天前
看上去是个大活,连源码都没有,难
ltyj2003
1 天前
就说干不了,勉强跑其他也是一堆未知问题,申请经费买套新的。
HojiOShi
1 天前
这种活你不条件反射般地当场拒绝,资历还是太浅了。我同事自己的源码,和硬件交互不深的,适配这些系统都花了大半年时间。没源码是怎么敢包揽这种活的?
jasm
1 天前
尝试过 wine+box 的方案,折腾好几天也仅仅只是勉强跑起来,实际使用后面一堆坑,动不动崩溃
mikewang
11 小时 48 分钟前
当然是利用 kvm 先跑一个 Windows on Arm 的虚拟机,就能直接运行 Win32 程序了。这利用的是 Windows 自带的 x86 转译功能(十分高效,类似于 Rosetta 2 )。

下面的 repo 甚至可以在树莓派的 Arm64 上跑 Win32 程序:

https://github.com/Botspot/bvm
tangmanger
5 小时 33 分钟前
付费 帮你改成.net6+的
tangmanger
4 小时 30 分钟前
@tangmanger dnspy+ilspy

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1174277

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX