半个闲人 發表於 2019-8-20 20:13:00

Deepin Linux下为Wine创建文件关联

<div>
<div>
<p>在Deepin Linux下,默认地,使用<code>apt</code>安装的Wine并没有创建文件关联,这使得在文件管理器中双击<code>exe</code>等Windows可执行文件时,不能直接运行。为此,必须手动在桌面环境中创建文件关联。</p>
<h2>文件关联的位置</h2>
<p>DDE(Deepin Desktop Environment,深度桌面环境)、Gnome等桌面环境通过桌面配置文件<code>*.desktop</code>,来定义在桌面环境下运行应用程序的入口,这些配置文件放置在<code>/usr/share/applications</code>目录下。文件关联——打开文件的方式,正是运行应用程序入口的一种用法。文件管理器通过读取该目录下定义的配置文件,来获取某种特定类型文件的打开方式。</p>
<p>因此,我们只需要编写合适的配置文件,放入其中,然后设置<code>exe</code>等文件的打开方式,就可以通过双击直接运行Windows程序了。</p>
<h2>Desktop配置文件内容与解析</h2>
<p>笔者编写的配置文件如下所示。将下述配置文件保存为<code>/usr/share/applications/Wine.desktop</code>。添加完成之后,就可以在<code>exe</code>文件的打开方式中看到Wine了。</p>
<pre class="hljs ini"><code class="ini"><span class="hljs-section">
<span class="hljs-attr">Name=Wine
<span class="hljs-attr">Name=Wine
<span class="hljs-attr">GenericName=Launch by Wine
<span class="hljs-attr">GenericName=使用Wine运行
<span class="hljs-attr">Comment=Launch by Wine
<span class="hljs-attr">Comment=使用Wine运行
<span class="hljs-attr">MimeType=application/octet-stream
<span class="hljs-attr">Keywords=exe;scr;
<span class="hljs-attr">Exec=deepin-wine %f
<span class="hljs-attr">Icon=wine【注意,这个icon可以是图片的绝对路径】
<span class="hljs-attr">Terminal=<span class="hljs-literal">false
<span class="hljs-attr">Type=<strong>Application</strong>
<span class="hljs-attr">NoDisplay=<span class="hljs-literal">false
<span class="hljs-attr">Categories=System;Utility;
<span class="hljs-attr">StartupNotify=<span class="hljs-literal">true
</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></code></pre>
<p>各个参数的意义如下:</p>
<table>
<thead>
<tr><th>参数名</th><th>定义</th></tr>
</thead>
<tbody>
<tr>
<td><code>Name</code></td>
<td>桌面项目的名称<br>带<code></code>的为中文环境下的名称</td>




</tr>
<tr>
<td><code>GenericName</code></td>
<td>桌面项目的标准名称<br>带<code></code>的为中文环境下的名称</td>




</tr>
<tr>
<td><code>Comment</code></td>
<td>桌面项目的注释,用以填写说明信息<br>带<code></code>的为中文环境下的注释</td>




</tr>
<tr>
<td><code>MimeType</code></td>
<td>桌面项目所对应的MIME,使用分号分隔<br><code>application/octet-stream</code>为<code>exe</code>可执行文件对应的MIME</td>




</tr>
<tr>
<td><code>Keywords</code></td>
<td>关键字,通常指定桌面项目的扩展名。Linux下使用的Windows可执行文件主要是<code>exe</code>和<code>scr</code>。</td>




</tr>
<tr>
<td><code>Exec</code></td>
<td>桌面项目运行的命令。在这里启动Wine,用Wine运行我们的目标程序。【还可以java -jar %f】<br>宏<code>%f</code>为用该桌面项目打开的文件路径,<code>%u</code>为URI。我们使用<code>%f</code>,使用<code>%u</code>会导致Wine找不到文件。</td>




</tr>
<tr>
<td><code>Icon</code></td>
<td>桌面项目使用的图标。由DDE管理,设置为<code>Wine</code>以使用Deepin为Wine项目设计的图标</td>




</tr>
<tr>
<td><code>Terminal</code></td>
<td>设定是否使用终端模式运行。设置为<code>false</code>,运行命令时不会显示终端;设置为<code>true</code>则会在终端中执行,主要用于调试。</td>




</tr>
<tr>
<td><code>Type</code></td>
<td>桌面项目的类型。典型的值有<code>Application</code>(应用程序)。【这个值不能乱写】</td>




</tr>
<tr>
<td><code>NoDisplay</code></td>
<td>具体作用未知,需要查查Gnome桌面环境的文档。</td>




</tr>
<tr>
<td><code>Categories</code></td>
<td>指定桌面项目的类别。</td>




</tr>
<tr>
<td><code>StartupNotify</code></td>
<td>具体作用未知,需要查查Gnome桌面环境的文档。</td>



</tr>



</tbody>



</table>



</div>



<br><br>作者:爱拼安小匠<br>链接:https://www.jianshu.com/p/b37de85922a6<br>来源:简书<br>简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。</div><br><br>
来源:https://www.cnblogs.com/silentdoer/p/11385311.html
頁: [1]
查看完整版本: Deepin Linux下为Wine创建文件关联