wine无法运行exe解决方案(Path not find)

您所在的位置:网站首页 su遇到错误需要关闭打不开 wine无法运行exe解决方案(Path not find)

wine无法运行exe解决方案(Path not find)

2024-02-05 20:16| 来源: 网络整理| 查看: 265

我下载的wine一直无法正常运行exe文件,折腾了好久,网上大量搜索也没有发现问题原因(貌似大家都没有遇到过一样),反复实验排除了系统版本的问题,wine版本问题。最后终于发现原来是wine与exe文件路径配置的问题。

针对问题:

wine正常安装后,无法运行非Windows自带的exe、bat等其他合法的Windows可执行文件,即自行安装(解压)的Windows程序无法运行。

问题现象:

在图形界面里面双击exe文件时,弹出一个wine对话框,内容为:"Path not find"。

在命令行中使用相对路径执行该文件,提示(假设程序为/home/userx/abc.exe):

wine: cannot find L"unix\\home\\userx\\abc.exe"

若在命令行下使用完整的路径名也无法运行并会提示:

wine: cannot find L"\\home\\userx\\abc.exe"

这些因素与问题无关:

32位或64位的linux系统。

wine版本。

问题原因:

wine只能运行放置在“在wine中配置了Windows盘符的目录(含子目录)”下面的exe程序,即文件需要有一个合法的Windows路径才能运行。 默认情况下,只有C:是合法的,它被自动配置为“$HOME/.wine/driver_c”。 详细解释:

wine在运行exe的时候,需要先将这个exe文件所在的路径用合法的Windows路径表示(在$HOME/.wine/dosdevices目录中以符号链接的形式保存了合法的路径映射(从虚拟Windows盘符到本地Linux路径))。这里就涉及一个Linux路径到Windows路径的映射,为了简化映射逻辑和方便使用,wine只允许进行磁盘分区级别的映射,即将某个Linux目录映射为一个虚拟Windows分区,由此访问该Linux目录下的目录和文件在wine中就完全等效于访问该虚拟Windows分区下的目录和文件。默认情况wine只为我们将“$HOME/.wine/driver_c”配置为虚拟的C盘,因此只有“$HOME/.wine/driver_c”下的文件才有合法的Windows路径,才能改被wine成功加载并运行。

解决方法:

本质上是让所运行的exe文件具有合法的能够被wine识别的Windows路径映射。

法1:

把需要运行的exe程序放置在$HOME/.wine/driver_c下的某个位置。

法2:

为Linux中放置exe程序的目录(或其某个上级目录)配置路径映射。

配置方法有二:

2.1修改$HOME/.wine/dosdevices/下的空白符号链接文件,让其中某一个链接文件指向需要的路径。

2.2使用winecfg在图形界面中配置location部分。值得一提的是:有一个auto detection功能,它会自动提取磁盘分区信息并为各个分区所对应的Linux挂载点生成一个对应的Windows盘符(就类似Windows的一个物理分区对应一个盘符的显示方式,只是C盘不同了)。

原载于http://blog.csdn.net/yanxiangtianji

转载请注明出处



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3