Wine虚拟技术及其使用

来源:互联网 发布:python统计字母个数 编辑:程序博客网 时间:2024/05/01 09:07

1. 从Wine的源代码安装包Wine的方法

1.1 获取Wine的源代码安装包

Wine的源代码安装包下载地址:

(1)http://www.winehq.org/site/download

(2)http://sourceforge.net/project/showfiles.php?group_id=6241

Wine的官方主页地址:http://www.winehq.org

1.2获取创建依赖关系

在 Wine 运行时,使用许多开源的库。虽然 Wine 并不严格地依赖于这些库而且能够在没有它们中的大多数时编译,但是在编译时拥有这些库,Wine的功能性将得到提升。在过去,许多用户问题是由于人们在从源创建 Wine 时,没有必要的开发库所致;由于这个以及其他的原因,我们高度推荐通过二进制包安装,或者通过创建能够自动满足其依赖关系的源代码包安装。

如果您希望手动安装创建依赖关系,有许多种方法可以检查您是否缺少一些有用的开发库。最为直接的方法是在您编译 Wine 之前,查看 configure程序的输出,以确定任何重要的东西是否缺少。如果是那样,简单地安装缺少的东西,然后在编译之前重新运行 configure。

您也可以检查 configure 修改了的文件,(include/config.h.in)并检视是否有文件 configure 试图寻找但没有找到。

1.3从wine-0.9.57.tar.bz2源代码编译并安装标准wine0.9.57的步骤

注意:在编译安装wine-0.9.57.tar.bz2之前,要在SELinux Administration中将SELinux的状态属性System Default Enforcing Mode设置为“Disabled”。否则,在安装wine的过程中会出现问题。

(1)将wine-0.9.57.tar.bz2源代码安装包拷贝到本机某个目录下;

(2)打开终端,运行命令:# su -,输入超级管理员的密码,切换成root用户;

(3)运行命令:# cd wine-0.9.57.tar.bz2所在的目录;

(4)运行命令:# tar -xjvf wine-0.9.57.tar.bz2//一般会生成一个soft目录

(5)运行命令:# cd wine-0.9.57

(6)运行命令:# ./configure

执行了这条命令之后,终端中会显示提示信息,要特别注意提示所不支持的功能,以找到相应的安装包安装之后,再次运行命令:# ./configure。直到没有不支持的功能为止,再往下继续运行下面的命令,这样编译安装的wine比较好,后面安装Windows应用程序的时候,会少出现一些问题与麻烦。

(7.1)运行命令:# make depend (wine的说明文档里面这样说的)

(7.2)运行命令:# make     (编译wine这个步骤大约需要1个多小时)

(8)运行命令:# make install安装wine程序

 (9) 运行命令:# wine --version,(注意version前面是两个短横线,而不是一个)如果正确显示wine的版本信息就表示wine安装成功。

 

1.4 卸载从源代码安装的 Wine

要卸载从源代码安装的 Wine, 您需要再一次在终端里导航到您用来安装 Wine 的同一个目录。然后运行下面的命令:

 # make uninstall

这个命令将需要 root 权限,并且应该从您系统上移除所有的 Wine 二进制文件。但是,它将不移除您的 Wine配置 以及位于您用户的 home目录 (主目录)里的应用程序,所以您可以自由地安装另一版本的 Wine 或者手动地删除该配置。

也可以在通过运行命令:# yum remove wine来卸载当前所安装的wine软件包。

2.使用命令的方式从网上安装并更新Wine及其依赖项

以root用户登录系统,打开终端,运行命令:# yum install wine,按照命令提示即可安装wine及其依赖项。但是因为更新滞后于wine的版本更新,往往落后一个版本,因为wine的版本基本上每个月更新三次。

为了及时、方便地使用当前经过测试的最新版本的wine,可以依次运行以下3个命令:

(1)运行命令:# yum remove wine卸载当前所安装的wine软件包;

(2)运行命令:# yum update yum更新yum命令的资源列表,从而使运行命令:# yum install wine

时,安装的wine是当前的最新版本;

(3)运行命令:# yum install wine安装新版本的wine软件包。

3. 测试Wine是否安装成功并查看其版本信息

测试Wine是否安装成功主要有以下几种方法:

(1)在终端中运行命令:# wine --version(注意version前面是两个短横线,而不是一个),如果正确显示Wine的版本信息就表示wine安装成功。

(2)在终端中运行命令:# winecfg或命令:/usr/local/bin/winecfg,弹出带出Wine配置对话框,就说明Wine安装成功。

若是第一次运行命令:#winecfg,Wine配置对话框要等一会才会出现,当Wine创建出一些文件夹的时候,你就看到安装进度了。 当然,你可以快速看一下配置对话框的页面,不过默认设置应该是最佳设置了。你可以点击OK,而后退出。

(3)在终端中运行命令:#wine notepad.exe,若弹出Windows操作系统中自带的记事本程序,表示Wine安装成功,但是这种方法一般不推荐使用。

4.  标准Wine的配置方法(1)——使用Winecfg

4.1 打开Wine配置对话框

您至少需要运行一次winecfg来设置wine的目录和硬件。在终端中运行命令:# winecfg或命令:/usr/local/bin/winecfg,即可弹出Wine配置对话框,如下图所示:

这里我们一般选择默认的设置,但是要注意以下两点:

(1)All settings are now stored directly in theregistry and accessed by Wine when it starts.(在这一个版本中所有的设置都被直接保存在注册表(registry)中,并在Wine 启动的时候能够直接访问这些设置信息。)

(2)Note: The Applications, Libraries, andGraphics tabs are linked together! If you have Default Settings selected under Applications,all of the changes made within the Libraries and Graphics tabs will be changedfor all applications. If you’ve configured a specific application under theApplications tab and have it selected, then any changes made in Libraries orGraphics will affect only that application. This allows for custom settings forspecific applications.

注意:Applications, Libraries, and Graphics标签是联系在一起的。如果你在Applications标签中已经选择了默认(缺省)设置,那么在Libraries和Graphics标签中所做的任何修改都将影响所有应用程序,即对所有应用程序都产生效果。如果你在Applications标签中对某一个特定的应用程序进行了配置并选准了它,那么在Libraries和Graphics标签中所做的修改只影响这一个应用程序。这样(鉴于以上特点),我们就可以对某写特定的应用程序进行自定义设置。(以上特点使得我们可以对特定的Application进行相对应的设置)。

4.2  ApplicationSettings(Windows应用程序设置)

4.2.1 默认设置说明

Recently Wine’s default Windows version has changed to Windows 2000.It’s known that many applications will perform better if you choose Windows 98.

Within the tab you’ll notice there is a Default Settings entry. Ifyou select that you’ll see the current default Windows Version for all applications.A troublesome application is best configured separately from the DefaultSettings. To do that:

(1)Click on theAdd application button.

(2)Browse untilyou locate the .exe

(3)After it’sbeen added you can choose the specific Windows version Wine will emulate forthat application.

Wine 有能力模仿不同版本的 Windows 的运行。一般而言,Wine 以 Win9x版本 或 NT版本 的方式来运行的。一些应用程序要求特定的运行模式才能运行,而更改Wine的设置可能使一个运行有错误的应用程序工作。最近,Wine的默认 Windows 版本变成了 Windows 2000。众所周知,如果您选择 Windows98 ,许多应用程序将运行地更好。

在该标签内您将看到一个 DefaultSettings (默认设定)入口。如果您选择它,您将看见给所有应用程序的当前默认 Windows 版本。一个问题较多的应用程序最好在默认设定之外单独地配置。具体做法如下:

(1)点击 Add application (添加应用程序)按钮。

(2)浏览直到您定位了该 .exe 文件。

(3)当它被添加后,您可以选择特定的 Windows 版本,Wine 将为该程序模拟这一特定版本的Windows系统。

4.2.2 对于选择Wine默认配置的Windows应用程序的安装步骤

(这里以安装Windows应用程序softname.exe为例进行说明基本步骤):

(1)可以将Windows应用程序的安装文件softname.exe拷贝到当前用户(如rendering)的主文件夹下,若为root用户时,其完整的目录就是/home/rendering/;

(2)若知道通过Wine在当前的Linux系统中安装Windows应用程序softname.exe所缺少的插件、组件、DLL文件,请参见(3.2节)的步骤进行设置;

(3)运行命令:# su - ,按照提示输入root管理员用户的密码,将当前用户的权限切换到超级管理员root权限;(若当前是超级管理员root,这一个步骤就不需要)

(4)运行命令:# cd /home/rendering, 将当前目录接换到Windows应用程序安装文件softname.exe所在的目录下;

(4)运行命令:# ls,查看softname.exe安装文件是否存在;

(6)运行命令:# wine [Windows安装程序文件名softname.exe];

(7)在弹出Windows应用程序安装界面之后,按照在Windows操作系统中普通应用程序的安装步骤进行安装即可完成相应的安装;

注意:在安装程序softname.exe有时会提醒您缺少一些插件、组件、DLL文件等,具体办法请参见(3.2节);

8)通过WineLinux下运行Windows应用程序的几种方式:

 (a)在终端中键入命令:# wine [你想运行的应用程序名softname];

(b)创建启动Windows应用程序的快捷方式,以通过Wine在Linux下运行Windows应用程序;

(c)在KDE或者GNOME桌面的文件管理器中切换到应用程序安装之后启动文件所在的目录,双击该应用程序的启动文件,或者单击鼠标右键、在弹出的快捷菜单中单击选项“用‘Wine Windows Emulator’打开”即可启动已安装成功的Windows应用程序。

4.3 Libraries Settings(库设置)

有些应用程序需要特定的库文件才能运行,Wine自身具有的一些库文件具有许多不足,但是Wine可以加载Windows操作系统中自身的DLL文件。也就是说,Dynamic Linked Libraries (DLLs) 既可以由Wine提供或要安装的应用程序提供,也可以从Windows操作系统中拷贝。对于某个Windows应用程序安装过程中提示缺少的xxx.dll文件(Dynamic Linked Libraries,简称DLLs),可以采取以下解决办法:

(1)对于缺少的DLL文件,既可以从本地Windows操作系统中拷贝或者从http://www.dll-files.com网站上下载相应的DLL文件,也可以使用命名相同的空文件代替(但是这种方法有时候是无效的)。

To obtain these Dynamic Linked Libraries (DLLs),either download themfrom a site such as http://www.dll-files.com or copy them from a Windowsinstallation. (With my setup, the files downloaded from the above site did not work,but the files from a Windows 2000 install worked just fine.)

(2)将缺少的xxx.dll文件复制到Linux系统Wine虚拟的Windows XP C盘的相应位置,即将这些缺少的DLL文件复制到~/.wine/drive_c/windows/system32文件夹中。(注意:这个目录需要在选中菜单栏中查看项中的显示隐藏文件之后才可以看到;同时,LinuxWine 0.9.57模拟的windows系统的C盘是:~/.wine/drive_c/windows/system32),而~/.wine/dosdevices目录下保存有驱动器映射信息)。

你可以在winecfg的Application标签里的Application Settings对话框对个别的程序进行自定义设置。那里只允许你进行windows兼容运行模式设置(译者:像windows下的exe属性里的兼容性标签)、某些显示设置和DLL的设置。

当你只需要设置某个程序使用某些特定的windows自带的DLL,不希望其它程序(包括wine)使用这些native的DLL的时候(而其它程序使用这些DLL会导致问题),(译者:wine自带的DLL叫做builtin,windows下原生的DLL叫做native)这个选项就会变得十分有用。在进行DLL设置时我都用这个方法,就是为了防止某些对wine的运行存在潜在威胁的nativeDLL被wine调用(译者:在一般情况下, wine只调用自带的builtinDLL,而不会使用native的DLL,版权问题,除非经过设置,如上所述)。这样我就只是修改了那些可执行的配置文件,当我不需要时,可以改回来而不会损坏整个Wine。(译者:设置这些东西之前,保证已经将一个程序的exe文件添加到Application标签的白框中,并且反色选中。不是default的那个,是你所需要设置的那个exe文件。)

4.3.1 DLL Overrides(DLL重载)

当Wine自身具有的DLL文件不能运行某一个应用程序时,需要导入Windows系统自身的DLL文件,然后进行重载库标签中进行重载设置,以便能更好地运行这个Windows应用程序。

It’s not always possible to run anapplication on builtin DLL’s. Sometimes native DLL’s simply work better. After you’velocated a native DLL on a Windows system, you’ll need to put it in suitableplace for Wine to and it and then configure it to be used. Generally the placeyou need to put it is in the directory you’ve configured to be c:\windows\system32(more on that in the drives section). There are four DLL’s you should never tryto use the native versions of: kernel32.dll, gdi32.dll, user32.dll, andntdll.dll. These libraries require low-level Windows kernel access that simplydoes not exist within Wine.

有时使用Wine内建的DLL文件不能运行某一个应用程序。有时使用Windows系统自身的DLL能更好地运行它,在找到一个 Windows 系统上的原生的DLL文件后,需要将它放在一个合适的目录下以便 Wine能找到它,并能配置使其被使用。一般来说,需要把这些DLL文件放在一个已配置为 c:\windows\system32 的目录下(更多信息请参见驱动设置部分)。有四个DLL决不能使用Windows 系统自身的版本:kernel32.dll, gdi32.dll, user32.dll, 和 ntdll.dll,因为这些库要求低版本的 Windows 内核存取而且它们不存在于 Wine 中。

With that in mind, once you’ve copied theDLL you just need to tell Wine to try to use it. You can configure Wine to choosebetween native and builtin DLL’s at two different levels. If you have DefaultSettings selected in the Applications tab, the changes you make will affect allapplications. Or, you can override the global settings on a per-applicationlevel by adding and selecting an application in the Applications tab.

需要注意的问题是,一旦您已拷贝了你需要的 DLL 文件,您就需要告诉 Wine 尝试使用它。您可以配置 Wine 来在本地(原生)DLL和内建的DLL之间选择在两个不同的级别。如果您在Applications(应用程序)标签选择了 DefaultSettings(默认设定),那么你当前所做的改变将影响所有的应用程序。然而,您可以通过在Applications(应用程序)标签里增加或者删除某一个应用程序而覆盖每个应用程序默认的全局设置。

To add an override for FOO.DLL, enter"FOO" into the box labeled New override for library: and click on theAdd button. To change how the DLL behaves, select it within the Existingoverrides: box and choose Edit. By default the new load order will be nativeWindows libraries before Wine’s own builtin ones (Native then Builtin). You canalso choose native only, builtin only, or disable it altogether.

例如,重载(override)FOO.DLL的步骤如下:

(1)在New override for library文本框中输入“FOO”,单击“”添加(Add)按钮;

(2)在已存在的重载(the Existing overrides)文本框中选准新增加的这一项之后,单击“编辑(Edit)”按钮,在弹出的对话框中设置该库文件的重载方式。默认情况下,选中的是nativeWindows libraries。

4.3.2  虚DLL文件(fake DLL files)(关于系统DLL的助记)

如果遇到需要某些DLL文件才能运行某一Windows应用程序,可以采用虚DLL文件(fake DLL files)的方法,即在配置的c:\windows\system32 的目录下新建一个空文件,将其命名为所缺少的DLL文件。当然,有时这种方法是无效的,需要从元Windows系统中拷贝相应的DLL文件。

4.3.2  缺失的DLL文件

DLLs usually get loaded in the following order:

(1)The directory the program wasstarted from.(程序被启动的目录)

(2)The current directory.(当前目录)

(3)The Windows system32(或system) directory.(Windowssystem32或system 目录)

(4)The Windows directory.(Windows目录,即Windows 根目录)

(5)The PATH variable directories.(PATH 变量目录)

所以,缺失的DLL文件可以放在以下几个地方:

(1)应用程序的安装目录下;

(2)Windows system32或system 目录;

4.4 Drive Settings(驱动器设置)

All of the drive settings reside in a special directory,~/.wine/dosdevices. Each "drive" is simply a link to where itactually resides. Wine automatically sets up two drives the first time you runWine:

$ ls -la ~/.wine/dosdevices/

lrwxrwxrwx 1 wineuser wineuser 10 Jul 23 15:12 c: -> ../drive_c

lrwxrwxrwx 1 wineuser wineuser 1 Jul 23 15:12 z: -> /

So, if the link to your c: drive points to ~/.wine/drive_c, you caninterpret references to c:\windows\system32 to mean ~/.wine/drive_c/windows/system32.

如果您连接您的C:盘驱动器指向  ~/.wine/drive_c,您可以说 c:\windows\system 即是说~/.wine/drive_c/windows/system的意思。

4.5 Desktop Integration(桌面交互/外观设置)

4.5.1 更换新的windows桌面

Wine can load Windows themes if you have them available.Wine能够加载Windows主题,如果你能获得这些Windows主题包的话。通过Wine加载Windows主题的步骤:

(1)Download a Windows XP theme. Besure it contains a .msstyles file.

(下载一个Windows XP主题包,要确保它包含一个后缀名为.msstyles的文件)

(2)Create a set of new directories inyour fake Windows drive(在Wine虚拟的C:盘的windows/目录~/.wine/drive_c/windows下,新建目录~/.wine/drive_c/windows/Resources/themes/,将下载的Windows主题包文件拷贝到这个目录下即可。也可以直接把原始Windows操作系统C:/ Windows/目录下的Resources文件夹直接拷贝到~/.wine/drive_c/windows/目录下):

 $ mkdir –p ~/.wine/drive_c/windows/Resources/themes/[name-of-your-theme]

(Windows主题包)

(在Wine虚拟的Windows驱动器目录下新建一些用于保存Windows主题包的文件目录)

(3)Move the .msstyles to that newname-of-your-theme directory.

(将下载的Windows主题包剪切(复制)到新建的那个存储Windows主题包的目录下,即~/.wine/drive_c/windows/Resources/themes/ [name-of-your-theme]目录下)

(4)Use the Desktop Integration tab ofwinecfg to select the new theme.

(使用winecfg配置对话框中的Desktop Integration标签选择新的主题)

4.5.2 虚拟桌面

使用这个选项可以使软件的安装更加流畅。我发现在不使用这个选项的时候,使用某些程序会导致已经激活的对话框、CDKEY输入窗口或更换光盘的确认窗口不能出现在前端。让我以为程序卡死了,就kill掉了进程。选择这个选项还能够避免程序锁死你的桌面或者把你的屏幕分辨率改成难看的模式。

5. 使用注册表与注册表编辑器(Using the Registry and Regedit)

All of the settings you change in Winecfg, with exception of thedrive settings, are ultimately stored in the registry. Wine implements aregistry and some settings not found in Winecfg can be changed within it. TheWine registry is written in plain text and can be changed using your favoritetext editor.

5.1 RegistryStructure(Windows操作系统注册表的体系结构)

参见《操作系统概念》(英文版第七版) P810(第22.3.3.9小节);《现代操作系统》(中文版,第二版)P774(第11.2.2小节)。

5.2 Registry Files(Wine的注册表文件)

Windows操作系统注册表(布局)在Wine中是通过每个用户的~/.wine目录下的三个不同的文件来实现的,可以使用文本编辑器来编辑它们,但是在Wine运行的时候编辑它们是无效的。其中,

system.reg

This file contains HKEY_LOCAL_MACHINE.

user.reg

This file contains HKEY_CURRENT_USER.

userdef.reg

This file contains HKEY_USERS\.Default (i.e. the default usersettings).

这些文件在你第一次使用Wine的时候由wineprefixcreate自动创建。一系列全局设置被保存在 c:\windows\inf\wine.inf 文件中,并被rundll32.exe 程序处理。当你第一次运行 Wine 时,wine.inf 文件被用来加载初始注册表。要获取更详细的信息,您可以查看wineprefixcreate 脚本来检视这一切是如何完成的。在Wine升级之后,wineprefixcreate 也可以用来升级默认的注册表键。正如我们所提到的,您可以使用任意您想要的文本编辑器编辑这些后缀名为.reg的文件。请确保您这么做的时候 Wine 不在运行,否则所有的修改将被丢失。

5.3 Using Regedit(使用注册表编辑器编辑注册表)

在终端中运行命令:# wine regedit,即可弹出注册表编辑器对话框;利用这个注册表编辑器就可以对Wine的注册表进行相应的编辑(参考手册这里有误)。Of particular interest to Wine users are the settings stored inHKEY_CURRENT_USER\Software\Wine. Most of the settings you change within winecfgare written to this area of the registry.(对于Wine的用户来说,很有趣的事情是,你在winecfg中所做的绝大部分设置都被写入HKEY_CURRENT_USER\Software\Wine.这个目录的这个键(Key)中了。)

5.4 Complete List of Registry Keys(注册表键的完整列表)

You’ll find an up-to-date list ofuseful registry keys and values in the developer’s wiki(http://wiki.winehq.org/UsefulRegistryKeys).在开发者的wiki中你可以找到一份最新的关于有用的注册表键及其值的列表。

6. 其他需要配置的项目(Other Things to Configure)

6.1 串口和并口(Serial and Parallel Ports)

串口和并口配置非常类似于驱动器配置 ——在 ~/.wine/dosdevices中使用设备名字简单地创建一个符号连接。

Windows  串口按照这样的习惯命名,即“com”后面接一个数字,如 com1,com2等。由于相类似,并口使用“lpt”后接数字,如 lpt1。

您应该直接地连接它们到相应的 Unix 设备,如/dev/ttyS0和/dev/lp0。例如,要配置一个串口和一个并口,可以通过以下命令来实现:

          ln -s /dev/ttyS0 com1

          ln -s /dev/lp0 lpt1

6.2 网络共享

Windows共享能被映射到unc/目录,所以任何尝试存取(访问)\\myserver\some\file 文件的操作,将能够在 ~/.wine/dosdevices/unc/myserver/some/file/ 里看到。例如,如果您使用 Samba 将\\myserver\some挂载到/mnt/smb/myserver/some,那么您可以运行命令:

# ln -s /mnt/smb/myserver/someunc/myserver/some

来使之在Wine 中可用(请不要忘记:如果~/.wine/dosdevices/unc目录不存在时,请先创建该这个目录。)

6.3 字体(Fonts)

可以直接将Windows操作系统的C:\WINDOWS\Fonts目录下的.ttf字体文件全部直接复制到Linux操作系统中Wine虚拟的Windows系统的主盘目录c:\windows\fonts目录下,即~/.wine/drive_c/windows/fonts目录下。可以在终端中运行命令:# wine notepad.exe,运行Windows系统自带的记事本来查看效果。

 

6.3.1 论坛上的方法:

(1)从Windows 目录下的 Fonts 里的 simsun.ttc 字体文件复制到目录Linux操作系统中Wine虚拟的Windows系统的主盘目录 ~/.wine/drive_c/windows/fonts 下;

(2) 把下面的代码保存为 zh.reg ,然后终端执行 regedit zh.reg;

代码内容如下:

 

REGEDIT4

 

[HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\FontSubstitutes]

"Arial"="simsun"

"ArialCE,238"="simsun"

"ArialCYR,204"="simsun"

"ArialGreek,161"="simsun"

"ArialTUR,162"="simsun"

"CourierNew"="simsun"

"CourierNew CE,238"="simsun"

"CourierNew CYR,204"="simsun"

"CourierNew Greek,161"="simsun"

"CourierNew TUR,162"="simsun"

"FixedSys"="simsun"

"Helv"="simsun"

"Helvetica"="simsun"

"MSSans Serif"="simsun"

"MSShell Dlg"="simsun"

"MSShell Dlg 2"="simsun"

"System"="simsun"

"Tahoma"="simsun"

"Times"="simsun"

"TimesNew Roman CE,238"="simsun"

"TimesNew Roman CYR,204"="simsun"

"TimesNew Roman Greek,161"="simsun"

"TimesNew Roman TUR,162"="simsun"

"TmsRmn"="simsun"

6.3.2  wine的按钮都没有字的解决办法(尝试过的有效方法):

(1)用文本编辑器打开system.reg;

(2)找到[Software\\Microsoft\\WindowsNT\\CurrentVersion\\FontSubstitutes]

(3)把里面的一个键值改成这样

"MS Shell Dlg"="\x6587\x9f0ePL\x7ec6\x4e0a\x6d77\x5b8bUni"

"MS Shell Dlg 2"="\x6587\x9f0ePL\x7ec6\x4e0a\x6d77\x5b8bUni"

注意:这里是将文字修改为文鼎的上海宋,具体方法是把所有的字体改为“simsun”,具体如下所示:

[HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsNT\CurrentVersion\FontSubstitutes]

"Arial"="simsun"

"Arial CE,238"="simsun"

"Arial CYR,204"="simsun"

"Arial Greek,161"="simsun"

"Arial TUR,162"="simsun"

"Courier New"="simsun"

"Courier New CE,238"="simsun"

"Courier New CYR,204"="simsun"

"Courier New Greek,161"="simsun"

"Courier New TUR,162"="simsun"

"FixedSys"="simsun"

"Helv"="simsun"

"Helvetica"="simsun"

"MS Sans Serif"="simsun"

"MS Shell Dlg"="simsun"

"MS Shell Dlg 2"="simsun"

"System"="simsun"

"Tahoma"="simsun"

"Times"="simsun"

"Times New Roman CE,238"="simsun"

"Times New Roman CYR,204"="simsun"

"Times New Roman Greek,161"="simsun"

"Times New Roman TUR,162"="simsun"

"Tms Rmn"="simsun"

这里是把“simsun”改为“文鼎的上海宋”

6.4 安装Wine Gecko

6.4.1 wine官方网站解决方法:http://wiki.winehq.org/Gecko

Wine Gecko is Wine's built-in replacement for Microsoft's InternetExplorer (MSIE). It is based on the Gecko Layout Engine developed by Mozilla.Many Windows applications (eg Steam) depend on components of MSIE. However,MSIE's restrictive licensing prevents its use under Wine for many users. So,while MSIE may run under Wine, users still need a replacement for it.

Wine Gecko is installed the first time an application tries to use acomponent of Internet Explorer (eg those found on the MozillaIntegration page)or when the user runs wine iexplore. If Wine cannot find the necessary files tosupport Gecko, it will attempt to download them automatically.

Easiest way to do it is this, first determine where your data_diris, check /usr/share/wine or /usr/local/share/wine if you built from source andadjust the following accordingly:

$ wgethttp://superb-east.dl.sourceforge.net/sourceforge/wine/wine_gecko-0.1.0.cab

$ sudo mkdir /usr/share/wine/gecko

$ sudo mv wine_gecko-0.1.0.cab/usr/share/wine/gecko

6.4.2 离线安装Wine Gecko

有些程序的运行依赖于IE,但是,安装IE会严重地破环Wine。所以可以安装Wine Gecko IE engine作为替代品。explorer.exe(IE 6浏览器)需要安装Gecko(Mozilla HTML engine)之后才能安装以上方法来使用。

(1)从http://source.winehq.org/winegecko.php下载wine_gecko.cab

(2)运行命令:#  cp wine_gecko.cab ~/.wine/drive_c/

(3)运行命令:#regedit

(4)修改HKCU/Software/Wine/MSHTML 中的GeckoUrl为:C:\wine_gecko.cab,可参看附图1

(5)接着执行需要HTML支持的程序,当弹出WineGecko Instalerl窗口时,点安装就行了,这是你会发现它瞬间就安装完成了。

(6) 删除wine_gecko.cab,$ rm~/.wine/drive_c/wine_gecko.cab

6.5安装.msi文件

wine官方网站解决方法:http://wiki.winehq.com/NativeMsi

NativeMsi.exe安装成功之后,使用.msi应用程序通过wine在Linux上安装windows应用程序,就要使用命令:# wine msiexec /i[install.msi(windows应用程序文件名)]或者命令:# wine start [install.msi(windows应用程序文件名)]来安装这些程序安装文件的扩展名为.msi的文件。

7. 使用wine的注意事项

7.1不要安装微软的DirectX

 Wine有它自己的DirectX库,安装微软的DirectX会破坏wine的DirectX库和Wine。但是,d3dx9_##.dll和d3dx10_33.dll可以从Windows复制过来使用,可能会在启动某些游戏时有所帮助。

7.2 使用root或者sudo来运行wine,可能会损坏系统文件。

7.3 其他wine的命令

(1)wineboot命令:模拟windows的重新启动

(2)wine control命令:运行控制面板

(3)wineserver会随着wine的命令自动启动,但也能通过终端启动来达到不同的目的。wineserver的一些参数:

 -d# 设置终端中debug的显示级别。

 -h  显示wineserver帮助文件

 -k  kill掉当前的wineserver,当程序失去响应而你要结束它时使用。

 -p  让wineserver一直运行,也就是说即使程序退出了,wineserver还继续运行。当你需要运行连续的程序时可以使用,这样可以缩短程序的启动时间。

 -w  让wineserver一直运行直到当前已激活的wineserver退出。

7.4 让Wine运行更流畅的方法

当出现程序运行缓慢或性能起伏不定的问题时,可以通过提高进程的优先级来解决。启动程序后,可以使用“renice”命令来改变进程的优先级。“renice”命令可以改变当前进程的优先级,“nice”的值是优先级级别的标志,(高优先级=低nice值,低优先级=高nice值)。这个命令把程序优先级的值设置为从-20(最高优先级)到19(最低优先级)之间的任何一个整数值,而默认的值是0。在启动程序以后,你需要打开另外一个终端输入下面的命令来改变程序的优先级:

sudo renice -10 -n game.exe

在用Wine运行出时,我不推荐直接把程序的优先级设置到-20,最好是从-10开始,如果效果提升不明显,可以一步一步尝试小幅度的提高(- 11,-12,……)。你会发现绝大多数的出不需要比-10更高的优先级就已经可以达到最好的性能了。在程序中,可以用ALT+TAB组合键回到桌面,使用“renice”命令。

7. 通过Wine在Linux下运行Windows应用程序的几种方式:

(1)在终端中键入命令:# wine [你想运行的应用程序名softname];

(2)创建启动Windows应用程序的快捷方式,以通过Wine在Linux下运行Windows应用程序;

(3)在KDE或者GNOME桌面的文件管理器中切换到应用程序安装之后启动文件所在的目录,双击该应用程序的启动文件,或者单击鼠标右键、在弹出的快捷菜单中单击选项“用‘Wine Windows Emulator’打开”即可启动已安装成功的Windows应用程序。

8. Wine的第三方工具应用程序的安装与使用

关于Wine的第三方工具应用程序列表参见网址:http://wiki.winehq.org/ThirdPartyApplications

8.1 wine doors

Wine-Doors是一个帮助你安装很多的Windows程序,包括游戏的一个图形界面的软件。它现在还处在开发阶段,但已经发布了一个可以下载的最初版本。就这个软件看来,是非常有前途的。

(1)在wine doors的官方网站:http://www.wine-doors.org/wordpress/?page_id=2下载安装文件wine-doors-0.1.2-1.i386.rpm;

(2)在linux下直接运行即可,但是安装的实践比较长,一般需要10分钟左右。

安装wine doors之后,在在启动菜单中选择运行wine doors之后,在弹出的对话框中选择下载安装相应的Windows应用程序即可,这里尤其有用的是一些安装其它Windows应用程序缩需要的组件的安装。

8.2 wine bot

(1)直接在终端中运行命令:

svn cohttp://winebot.sandbox.cz/anonsvn/winebot/trunk winebot,即可将winebot所有源代码下载到当前目录下名字为winebot的文件夹中,将这个文件夹压缩成winebot.tar.gz或者winebot.tar.ba2格式的压缩文件即可安装这样的安装文件的安装方法进行安装;也可以直接进行安装而不需要经过压缩处理。

(3)使用安装xxx.tar.gz文件的方法进行安装,具体步骤如下:

(4)运行命令:# tar xvzf data.tar.gz,这个程序的安装说明文件INSTALL在原压缩文件data.tar.gz的/usr/share/doc/winebot/目录下,可以进行查看;

(5)

8.3 WineTools

WineTools是一个菜单式的可以安装90多个常见Windows程序的软件。它也可以帮助你设置Wine的基本目录。已经不再有人维护 WineTools,它已经两年没有升级了,但很多用户都发现它依然有用。而WineTools所作的一切事情都可以自己通过winecfg或终端完成。

9.1 在Linux下通过wine运行QQ 2007

(1)将QQ 2007.exe安装文件拷贝到当前用户grid的主文件夹下;

(1.1)打开grid的主文件夹,勾选“查看-显示隐藏文件”这一项

(1.2)运行命令:#winecfg,选择wine的默认配置

(2)运行命令:# ls,查看QQ2007.exe安装文件所在目录

(3)将安装有windows分区中的disk-1/windows/system32目录下的mfc42.dll文件拷贝到wine虚拟的windows系统的C盘的/home/grid/.wine/drive_c/windows/system32目录下;(添加了这一步之后,在执行下面一个步骤的时候就没有出现提示mfc42.dll文件不存在的警告信息)

(4)运行命令:# wine QQ2007.exe安装windows应用程序

(5)在弹出Windows应用程序安装界面之后,安装Windows应用程序的安装步骤进行安装即可完成相应的安装;

(6)Windows安装之后的安装文件在/home/grid/.wine/drive_c/ProgramFiles/Tencent/QQ/QQ.exe,双击QQ.exe文件即可运行QQ程序。

10. Cedega虚拟化技术概述

官方主页:(1)http://www.cedega.com/start/

(2)http://www.transgaming.com/products/cedega/

Cedega是衍生于Wine的一款专门用来在Linux下为Windows游戏提供运行环境的软件。TransGaming 公司基于早期的wine代码派生了一个分支,重点开发 directx 模拟技术,以便提供游戏模拟支持,这就是现在的Cedega。从性能上来说,一般Cedega对基于directx的游戏提供的支持好于 wine,但是对于普通软件的支持可能不如wine + 部分Windows DLL的效果,特别是中文支持很糟糕。

11. NdisWrapper

官方主页:http://ndiswrapper.sourceforge.net/joomla/

NdisWrapper实际上是一个开源的驱动(从技术上讲,是内核的一个模块),它能够让Linux使用标准的Windows XP下的无线网络驱动。你可以认为NdisWrapper是Linux内核和Windows驱动之间的一个翻译层,Windows驱动可以通过 NdisWrapper的配置工具进行安装。

0 0
原创粉丝点击