Ubuntu 22.04 如何通过桌面快捷方式运行 .exe 文件

Ubuntu 22.04 如何通过桌面快捷方式运行 .exe 文件

在将 Ubuntu 更新到 22.04 后,PlayOnLinux 无法安装或运行任何 Windows 应用程序,因此我不得不进行研究,我发现这个wine命令是一个很好的替代命令,它不仅可以运行任何应用程序,还可以在终端中输入进行安装:

$ wine setup.exe

安装完成后,按照本网站无需安装有关 winehq因为这,每次要玩的时候都要输入以下命令,很累:

$ cd /home/<user>/.wine/drive_c/Program\ Files\ \(x86\)/<folder_of_app>

$ wine <file>.exe

因此我有一个想法,创建一个桌面快捷方式,其中包含一些命令,用鼠标单击后会自动运行。

有人能帮助我吗?

答案1

2022 年 11 月 4 日更新:最近,我弄清楚了如何根据 Windows 的应用程序类型创建桌面快捷方式来运行 .exe 文件,例如:

  • 如果是像这样的简单应用程序notepad.exeultraiso.exe或者其他以简单窗口而非全屏方式运行的应用程序,则只需要一个.desktop文件即可运行:按照点 A 和 C 操作。
  • 如果某个应用以全屏方式运行,例如“极品飞车:高风险”或者《帝国时代 II HD》,需要两个具有不同扩展名的文件.sh才能.desktop运行:按照点B和C。

A. 创建新的桌面快捷方式.desktop将桌面目录中的扩展名存档/home/<user>/Desktop/以及“所有应用程序”目录中的扩展名存档/usr/share/applications/复制/粘贴到其中:

  • 注意:在 旁边的引号之间wine,需要使用双反斜杠\\来分隔路径的目录。
[Desktop Entry]
Name=<name>
Comment=<comment>
Keywords=<word1>;<word2>;<word3>
Exec=wine "C:\\Program Files (x86)\\<app_folder>\\<file>.exe"
Terminal=false
Type=Application
StartupNotify=true
Icon=<icon>
  • 如果您想执行任何类似的 Wine 配置winecfg,请复制/粘贴此Exec语法:

Exec=wine <configuration> %f

CONFIGURATION       DESCRIPTION

winecfg             Wine configuration
control             Wine Control Panel
control joy.cpl     Game Controllers
regedit             Registry Editor
uninstaller         Add/Remove Programs

B.1. 创建新的shell 脚本在安装的应用程序主文件夹中包含扩展的存档.sh中,复制/粘贴以下 shell 脚本文本:

gnome-terminal --tab --title="<name>" --command="bash -c 'cd /home/<user>/.wine/drive_c/Program\ Files\ \(x86\)/<app_folder>; wine <file>.exe'"

The meaning of each one of shell script:

SYNTAX              DESCRIPTION

gnome-terminal      Open up a gnome-terminal

--tab               Open up a unique tab

--title="<name>"    Name (whatever you want) of a tab

--command="bash -c '<cmd1>;<cmd2>;<cmd3>'"
                    The (bash -c) syntax is a bash command that runs the first
                    <command>, once it is finised, it runs the next <command>
                    and so on.

B.2. 创建新的桌面快捷方式.desktop将桌面目录中的扩展名存档/home/<user>/Desktop/以及“所有应用程序”目录中的扩展名存档/usr/share/applications/复制/粘贴到其中:

[Desktop Entry]
Name=<name>
Comment=<comment>
Keywords=<word1>;<word2>;<word3>
Exec=/home/<user>/.wine/drive_c/Program\ Files\ \(x86\)/<app_folder>/<file>.sh
Terminal=false
Type=Application
StartupNotify=true
Icon=<icon>
  • 注意:如果文件启动的终端.sh在几秒钟内没有运行应用程序,解决问题的方法是按CTRL+C停止终端,它会自动关闭。然后,再次尝试以相同的方式运行应用程序。警告 !永远不要关闭终端,否则可能会杀死终端,并且它将永远无法工作,直到用户必须格式化硬盘并重新安装 Ubuntu。

C.将.desktop档案设置为可执行文件并允许启动,还将.sh档案设置为可执行文件:

  • 注意:如果桌面快捷方式或桌面目录设置为其他用户可写,则桌面快捷方式可能会被阻止启动。

将文件/文件夹设置为用户(所有者)可执行,需要键入u+x;删除文件/文件夹,使其对其他用户可写入,需要键入o-w;这是在终端中设置或删除可执行或可写入的命令示例:

$ chmod -v u+x <file/folder>

设置<file>.desktop从桌面目录启动:

$ gio set <file>.desktop metadata::trusted true

检查是否允许启动:

$ gio info <file>.desktop | grep metadata::trusted

D. 关于获得图标文件到桌面的快捷方式有两种可以选择:

  • 图标的代码(每个不同图标的代码都在 每个文件中/usr/share/applications):Icon=<code_of_icon>
  • 从任何 PNG 文件中获取:Icon=/<path>/<file>.png

就这样吧,谨致问候。

相关内容