[Share Experiences] wine使用教程2-用deepin-wine6安装/运行exe程序的方法
Tofloor
poster avatar
delsin
deepin
2022-06-11 00:33
Author

wine使用教程

第2辑:在Deepin/UOS家庭版用deepin-wine6-stable安装/运行exe程序的方法

注:

1、建立deepin-wine6-stable环境:新装的系统需要安装一款应用商店里使用deepin-wine6-stable运行的wine应用(如wine版微信、wine版QQ),并运行一下。(系统会自动建立deepin-wine6-stable环境)

2、以下教学以32位7-Zip的安装程序7z2107.exe(版本21.7.0.0)为案例软件,该exe程序我放在系统下载(Downloads)文件夹,即/home/$USER/Downloads/7z2107.exe,或者写作~/Downloads/7z2107.exe

多数情况下,/home/$USER与~可以相互替代。

一、安装exe程序

安装程序到一个新建的容器

终端命令:

WINEARCH=win32或者wine64 WINEPREFIX=容器路径 deepin-wine6-stable 需安装/运行的exe软件的路径

案例:

WINEARCH=win32 WINEPREFIX=~/.deepinwine/Wine-7zip deepin-wine6-stable ~/Downloads/7z2107.exe

(注:如果提示安装mono,可点取消。mono模拟的.NET Framework,不是所有exe软件都需要这个。需要的时候你再手动安装即可)

上述命令结构解析:

(1)WINEARCH=后面写win32,即表示新建一个32位的容器,如果写win64,即表示新建一个64位的容器。

(2)WINEPREFIX=是指定的容器路径(此处Wine-7zip就是容器名称,如果容器Wine-7zip不存在,默认会新建这个容器)。

(3)如果要用deepin-wine5,中间可以写成deepin-wine5;如果要用deepin-wine5-stable,中间可以写成~/.deepinwine/deepin-wine5-stable/bin/wine

(4)最后接的是你要安装的exe安装程序的所在路径。

二、运行已安装到容器的exe主程序

终端命令:

WINEPREFIX=容器路径 deepin-wine6-stable “c:/exe主程序在虚拟C盘(即drive_c)里的路径”

案例:

WINEPREFIX=~/.deepinwine/Wine-7zip deepin-wine6-stable "c:/Program Files/7-Zip/7zFM.exe"

三、winecfg设置

可设置windows版本、替换dll函数、窗口修饰、显示分辨率等。

1、修改windows版本

默认的windows版本是windows7,有的exe安装时提示系统版本太低的话,就需要利用winecfg修改为windows10。有的exe软件在windows xp表现更好,就需要用winecfg修改为windows xp。

打开winecfg的终端命令:

WINEPREFIX=容器路径 /opt/deepin-wine6-stable/bin/winecfg

案例:

WINEPREFIX=~/.deepinwine/Wine-7zip /opt/deepin-wine6-stable/bin/winecfg

上述命令结构解析:

WINEPREFIX=是指定的容器路径,后面打一个空格,然后输入winecfg所在路径 /opt/deepin-wine6-stable/bin/winecfg

案例软件7-Zip无需修改windows版本即可正常运行。

2、函数顶替

有的exe软件,无需新增函数顶替。

有的exe软件,新增以下几个函数顶替基本上就能正常运行了:atl100、mlang、msls31、riched20、usp10

有的exe软件还需要添加msvcp60、riched32等函数

案例软件7-Zip无需新增顶替函数即可正常运行。

四、字体设置

由于linux系统默认是没有windows常用字体(如Arial、微软雅黑、宋体),所以用wine安装的exe软件大概率会出现字体乱码、字体呈现方块、字体显示不出来等问题。此时,需要设置字体,方法有三种:

方法1:直接安装“Win字体”应用(可以与方法2并用)

到星火应用商店里下载安装“Win字体”。安装好后,再调出winecfg(方法如前述),字体选项下勾选“允许加载系统字体”,建议顺便把“允许加载Windows Fonts目录下的字体”也勾上。

方法2:复制字体到虚拟C盘的字体文件夹(可以与方法1并用)

将exe软件需要用的字体文件(如宋体的文件为simsun.ttf)复制粘贴到容器的字体文件夹,路径通常为:

~/.deepinwine/容器名称/drive_c/windows/Fonts

案例软件Fonts文件夹路径:~/.deepinwine/Wine-7zip/drive_c/windows/Fonts

调出winecfg(方法如前述),字体选项下勾选“允许加载Windows Fonts目录下的字体”,建议顺便把“允许加载系统字体”也勾上。

方法3:修改字体注册表(尽量不要与方法1和方法2并用)

不安装字体,而是在注册表里把需要的字体替换为你系统已有字体。

打开注册表的命令:

WINEPREFIX=容器路径 /opt/deepin-wine6-stable/bin/regedit

案例:

WINEPREFIX=~/.deepinwine/Wine-7zip /opt/deepin-wine6-stable/bin/regedit

找到HKEY_CURRENT_USER\Software\Wine\Fonts\Replacements,如果没有Replacements,新建一个项,项名为Replacements。

然后在Replacements下添加字符串值。如要把宋体(SimSun)替换为思源宋体(Noto Serif CJK SC),则字符串名称为SimSun,值为Noto Serif CJK SC

截图_regedit.exe_20220610152347.png

一个一个添加字符串太麻烦,楼主做了一个字体替换注册表字体替换自建注册表10.zip,解压后把里面的.reg文件导入注册表即可(regedit界面左上角——注册表——导入注册表文件)。

截图_选择区域_20220610154327.png

五、winetricks设置

可以添加一些运行时、组件、dll。不是每一个exe软件都需要用到winetricks。案例软件7-zip无需设置winetricks。

安装winetricks的终端命令:

sudo apt install winetricks

运行winetricks的终端命令:

WINEPREFIX=~/.deepinwine/Wine-7zip winetricks

选择默认的wine容器——安装windows DLL和组件,然后根据需要安装运行时、组件、dll。

六、给exe软件制作一个桌面图标

在桌面新建一个txt文件(如7zip.txt),复制以下内容到txt文件里:

[Desktop Entry]
Categories=Application
Exec=sh -c 'WINEPREFIX=/home/$USER/.deepinwine/Wine-7zip deepin-wine6-stable "c:/Program Files/7-Zip/7zFM.exe"'
Icon=/usr/share/icons/Default/devices/64/media-optical.svg
MimeType=
Name=7-zip
StartupNotify=true
Type=Application
X-Deepin-Vendor=user-custom

保存退出txt,右键重命名,把这个txt文件的后缀改为desktop(如7zip.desktop)

截图_选择区域_20220610163830.png

注:

Exec= ————sh -c 'WINEPREFIX=容器路径 deepin-wine6-stable "c:/exe主程序路径在虚拟C盘里的路径"'

Icon= ————指图标路径,文件格式一般为png、svg、icon,图标大小64×64为宜,图标格式最好是svg。

Name= ————图标文件显示的名称

以上三项后面的内容可以根据你自己所安装的软件的实际情况更改。

特别说明,Exec=后面不能用~来代替/home/$USER

七、卸载exe软件

终端命令:

WINEPREFIX=容器路径 deepin-wine6-stable "c:/exe软件的卸载程序uninstall.exe的路径"

案例:

WINEPREFIX=~/.deepinwine/Wine-7zip deepin-wine6-stable "c:/Program Files/7-Zip/Uninstall.exe"
Reply Favorite View the author
All Replies
dgmenghuan
deepin
2022-06-11 00:37
#1

agree

Reply View the author
deepin-superuser
deepin
2022-06-11 06:37
#2

向大佬提问 Wine 微信中泰文显示方块,有办法解决吗?

Reply View the author
delsin
deepin
2022-06-11 06:58
#3
deepin-superuser

向大佬提问 Wine 微信中泰文显示方块,有办法解决吗?

你得自己搞清楚你的软件使用的什么泰文字体。如果不知道,你网上搜一搜微软默认的泰文字体是啥,然后安装一下字体看看。

Reply View the author
deepin-superuser
deepin
2022-06-11 07:51
#4
delsin

你得自己搞清楚你的软件使用的什么泰文字体。如果不知道,你网上搜一搜微软默认的泰文字体是啥,然后安装一下字体看看。

https://docs.microsoft.com/zh-cn/windows/win32/uxguide/vis-fonts

Segoe UI 包括拉丁文、希腊文、西里尔文和阿拉伯语字符。 还有针对 ClearType 进行优化的新字体,为其他字符集创建和使用。 其中包括适用于日语的 Meiryo、用于朝鲜语的马尔贡哥特式、适用于中文 (传统) 的 Microsoft JhengHei、适用于中文的 Microsoft YaHei (简体) 、希伯来语的吉沙和用于泰国的 Leelawadee,以及专为文档使用的 ClearType 集合字体。

我查到是 Leelawadee ,但是我加了 不起作用

image.png

Reply View the author
delsin
deepin
2022-06-11 08:09
#5
deepin-superuser

https://docs.microsoft.com/zh-cn/windows/win32/uxguide/vis-fonts

Segoe UI 包括拉丁文、希腊文、西里尔文和阿拉伯语字符。 还有针对 ClearType 进行优化的新字体,为其他字符集创建和使用。 其中包括适用于日语的 Meiryo、用于朝鲜语的马尔贡哥特式、适用于中文 (传统) 的 Microsoft JhengHei、适用于中文的 Microsoft YaHei (简体) 、希伯来语的吉沙和用于泰国的 Leelawadee,以及专为文档使用的 ClearType 集合字体。

我查到是 Leelawadee ,但是我加了 不起作用

image.png

如果安装星火商店的“Win字体”的话,就不要改注册表哦。

你装星火商店的“Win字体”了吗,这里面字体挺全的,装完也没用吗?

Reply View the author
delsin
deepin
2022-06-11 08:11
#6
deepin-superuser

https://docs.microsoft.com/zh-cn/windows/win32/uxguide/vis-fonts

Segoe UI 包括拉丁文、希腊文、西里尔文和阿拉伯语字符。 还有针对 ClearType 进行优化的新字体,为其他字符集创建和使用。 其中包括适用于日语的 Meiryo、用于朝鲜语的马尔贡哥特式、适用于中文 (传统) 的 Microsoft JhengHei、适用于中文的 Microsoft YaHei (简体) 、希伯来语的吉沙和用于泰国的 Leelawadee,以及专为文档使用的 ClearType 集合字体。

我查到是 Leelawadee ,但是我加了 不起作用

image.png

外文确实不好弄。之前我wine酷狗音乐的时候就有一些外文歌曲的字体显示不出来。你可以谷歌一下泰语常用字体。都装来试试。

Reply View the author
谢克辉
deepin beta test group
2022-06-18 04:00
#7

大佬请问一下免安装的exe软件(就是一个文件夹里有一堆文件的那种)该如何安装?还有能出一个mono安装的教程吗?谢谢

Reply View the author
delsin
deepin
2022-06-18 05:58
#8
谢克辉

大佬请问一下免安装的exe软件(就是一个文件夹里有一堆文件的那种)该如何安装?还有能出一个mono安装的教程吗?谢谢

你说的是绿色免安装软件吗?运行绿色软件的方法跟本帖方法差不多。你按本帖方法创建容器,然后把绿色软件整体复制到容器的Program Files文件夹里,然后按本帖方法运行即可。

Reply View the author
delsin
deepin
2022-06-18 06:10
#9
谢克辉

大佬请问一下免安装的exe软件(就是一个文件夹里有一堆文件的那种)该如何安装?还有能出一个mono安装的教程吗?谢谢

给特定容器安装wine-mono的方法:

1、下载mono版本(比如wine-mono-6.1.0-x86.msi),存放在~/Downloads里。

2、终端给特定容器安装mono的命令:

WINEPREFIX=~/.deepinwine/容器名称 deepin-wine6-stable msiexec /i ~/Downloads/mono的文件名

案例(容器名假设为Wine-7zip,mono文件名为wine-mono-6.1.0-x86.msi):

WINEPREFIX=~/.deepinwine/Wine-7zip deepin-wine6-stable msiexec /i ~/Downloads/wine-mono-6.1.0-x86.msi

Reply View the author
仰而望星兮
deepin
2022-08-02 21:13
#10

大大,我这好像有点不对劲啊

该怎么整接下来
截图_deepin-terminal_20220802131109.png

Reply View the author
delsin
deepin
2022-08-02 22:12
#11
仰而望星兮

大大,我这好像有点不对劲啊

该怎么整接下来
截图_deepin-terminal_20220802131109.png

最近deepin-wine6-stable好像是有问题,我UOS电脑上调用deepin-wine6-stable也出不来。

建议你用wine游戏助手或者原生Wine。

Reply View the author
仰而望星兮
deepin
2022-08-02 22:45
#12

用wine游戏助手的话,是用这种方法吗

https://hu60.cn/q.php/bbs.topic.94926.html

Reply View the author
delsin
deepin
2022-08-02 23:23
#13
仰而望星兮

用wine游戏助手的话,是用这种方法吗

https://hu60.cn/q.php/bbs.topic.94926.html

B站有视频教程的吧。先下载所需的wine版本,然后左上角点加号,设置wine容器、exe程序,选择wine版本等。

Reply View the author
quasimodo_shimch
deepin
2022-08-20 00:36
#14

运行象棋巫师有帮助!谢谢分享!

Reply View the author