如何添加没有安装程序的 Windows 程序(在 Wine 下)?

如何添加没有安装程序的 Windows 程序(在 Wine 下)?

我正在运行 Mint 18.1 serena MATE,并安装了 Wine 1.6.2

我有几个 Windows 程序,每个程序仅包含一个目录,其中包含一个 .exe,可能是一个或两个 .dll,以及一些数据文件。它们当前驻留在熔丝驱动器上(旧的 Windows 系统 ntfs 驱动器)。

首先,Wine 不喜欢直接从保险丝驱动器运行东西。

其次,Wine 喜欢运行一个安装程序(通常是 .msi 文件),让它将应用程序使用的文件放置在 Wine 虚拟驱动器上(从而避免直接访问外部/熔丝驱动器)。

我的程序没有安装程序。它们是 XP Windows 模式(不是控制台模式)游戏,如 Freecell、Majhon、Klondyke,但在 .msi 或 .net 之前的日子里,每个人都对它们充满期待。它们首先是通过软盘传播的!

作者将所有内容编译为基本上“独立”运行(运行时等链接到应用程序中)。“安装”指令是“将此目录复制到硬盘,然后创建一个 Windows 快捷方式来启动可执行文件。 ”

由于这些程序没有安装程序,我如何将它们引入 Wine 中?


PS:请不要向我指出我提到的游戏的 Linux 原生版本。这是关于旧版 Windows 程序的常见问题,这些程序根本不必是游戏。

答案1

这里真正的问题围绕着 Wine 对老式安装程序类型程序(例如 MSI 之前的 InstallShield)的作用。答案是很少,如果有的话。没有快捷方式,没有开始菜单,没有添加/删除程序,没有魔兽世界。

(但是,如果较新的安装程序只是 MSI 的前端,则 Wine 卸载程序可以使用 .msi 文件。但我不知道有什么简单的方法可以从包含所有内容的目录中获取 .msi 包。)

安装程序本身(而不是 Wine)会尝试处理所有这些事情。例如,安装程序可以在 \users\public\start menu\startup 中创建快捷方式。 Wine 是健忘的,程序不会自动启动。 .cpl 也不会神奇地出现在(不存在的)控制面板上。

Linux 桌面将提供 Windows 用户期望从 Windows 桌面(也称为 Windows 资源管理器)获得的任何用户级服务。 Wine 所做的一切就是尝试保持 dll 的正常(winecfg)并处理 Windows 系统调用。


因此,将文件复制到 Wine“虚拟驱动器”后~/.wine/drive_c/...,使用您选择的桌面和文件管理器在 Linux 中完成创建快捷方式、将程序(链接)添加到 Unix 文件夹等操作。

例如,使用xfce图纳尔,右键单击树.exe中的文件~/.wine/...会提供“使用 wine Windows 程序加载器打开”或“发送到桌面(创建链接)”选项。该链接只是 xfce 桌面上的一个启动器,它启动针对该程序的 wine windows 程序加载器。

相关内容