vb6 - 编译后的 vb6 应用程序理论上可以在 Mac 上的 WINE 下运行吗?

标签 vb6 emulation wine

工作中的另一位开发人员告诉我,由于某些特定于 Visual Basic 6 应用程序的原因,它无法工作。

但我认为只要包含正确的 DLL 和运行时文件,它就应该可以工作,VB6 不是编译为机器代码吗?

编辑:我只是说一般情况下应该有可能。只要没有人给我一个它不起作用的理论理由,我将在几天内实际测试它。

编辑 2:我认为开发人员指的是 P 代码,vb6 可以选择将其编译为而不是二进制文件,后者在类似于(或前身).Net 框架的虚拟机下运行。

最佳答案

我已经在 Ubuntu 下的 Wine 中测试了一个大型 VB6 应用程序。事件 msi 安装程序工作正常。在低级实现细节方面遇到了一些麻烦(例如,在 CDRF_NOTIFYITEMDRAW 阶段的 NM_CUSTOMDRAW 中,默认情况下 hDC 文本不像在 Windows 通用控件中那样透明)。所以是的,即使是高度子类化的东西也能工作。我只需要熨烫那些小故障。

这是一个检查app是否在wine下运行的函数

Property Get IsWine() As Boolean
    IsWine = (GetProcAddress(GetModuleHandle("kernel32"), "wine_get_unix_file_name") <> 0)
End Property

关于vb6 - 编译后的 vb6 应用程序理论上可以在 Mac 上的 WINE 下运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7081456/

相关文章:

mysql - 如何从数据库中检索值并显示在文本框中

vb6 - 在VB6中从PC发送长消息到手机

java - 使用 Java 的 Google 数据存储模拟器(不使用 GAE)

macos - 如何在 Mac 上运行 IE(免费)

winapi - VB4 AddressOf 等效项(向系统菜单添加项目)

VB6 转换表达式

android - 索尼 xperia mini 安卓模拟器

android - 有没有办法在 Windows 程序中模拟 Android 应用程序?

linux - 尝试确定如何在命令行模式下在 Wine 上运行 Windows 应用程序

fonts - Wine 和西里尔字母字体