Wine 用户指南(五)

发表于:2007-07-04来源:作者:点击数: 标签:
Wine 用户指南(五) 翻译:寒蝉退士 译者声明:译者对译文不做任何形式的担保,译者对译文不拥有任何权利并且不负担任何义务。 原文:http://www.winehq.com/Docs/wine-user/ 第 5 章. 运行 Wine 目录 5.1. 如何运行 Wine 5.2. 命令行选项 编写:John R. Sh

Wine 用户指南(五)
翻译:寒蝉退士
译者声明:译者对译文不做任何形式的担保,译者对译文不拥有任何权利并且不负担任何义务。
原文:http://www.winehq.com/Docs/wine-user/

    第 5 章. 运行 Wine
    目录
    5.1. 如何运行 Wine
    5.2. 命令行选项
    编写:John R. Sheets <jsheets@codeweavers.com>

   5.1. 如何运行 Wine
    Wine 是一个非常复杂的软件,有多种方式调整如何运行它。除了非常少的例外,你可以通过配置文件激活与命令行参数相同的设置特征。本章中,我们将简要的讨论这些参数,并把它们与相应的配置变量相匹配。你可以调用 wine --help 命令来得到所有 Wine 的命令行参数的一个列表:

    用法: ./wine [选项] 程序名字 [参数]
   
    选项:
    --debugmsg 名字  开启和或关闭调试消息
    --desktop 几何   使用给定几何的一个桌面窗口
    --display 名字   使用指定的显示器
    --dll 名字       启用或停用内置的 DLL
    --dosver x.xx    模仿的 DOS 版本(例如,6.22)
                     只在与 --winver win31 一起时有效
    --help,-h        显示这个帮助信息
    --language xx    设置语言(Br,Ca,Cs,Cy,Da,De,En,Eo,Es,Fi,Fr,Ga,Gd,Gv,
                     Hr,Hu,It,Ja,Ko,Kw,Nl,No,Pl,Pt,Sk,Sv,Ru,Wa 之一)
    --managed        允许窗口管理器来管理建立的窗口
    --synchronous    开启同步显示模式
    --version,-v     显示 Wine 版本
    --winver xxxx    模仿的版本 (win95,nt40,win31,nt2k,win98,nt351,win30,win20)

    你可以按需要指定任何参数。典型的,你想使你的配置文件成为一个合理的缺省设置;在这种情况下,你可以运行 wine 而不用显式的列出任何选项。在少见的情况下,你可能想屏弃命令行上的特定参数。
   
    在选项之后,你应该加上你希望 wine 去执行的文件的名字。如果可执行文件在配置文件的 Path 参数中的目录里,你可以简单的给出可执行文件的名字。但是,如果文件不在 Path 中,则你必须给出到可执行文件的完整路径(用 Windows 格式,而不是 UNIX 格式!)。例如,给出下列的一个 Path:
   
    [wine]
    "Path"="c:windows;c:windowssystem;e:;e:test;f:"
   
    要运行 c:windowssystemfoo.exe 你可以用:
   
    $ wine foo.exe

    但是,你必须使用下面的命令运行文件 c:myappsfoo.exe:
   
    $ wine c:myappsfoo.exe
   
    最后,如果你想向你的 windows 应用程序传递任何参数,你可以把它们列在尾部,在可执行文件名之后。这样,要运行虚构的 foo.exe Windows 应用程序并加上它的 /advanced 模式参数,在--managed 模式下调用 Wine,你的命令将如下:
   
    $ wine --managed foo.exe /advanced
   
    换句话说,影响 Wine 的选项应当在 Windows 程序名字之前,而影响 Windows 程序的选项在它的后面。

    5.2. 命令行选项
    5.2.1. --debugmsg [通道]
    Wine 仍不完善,并且许多 Windows 应用程序仍然不能在 Wine 下运行而没有 bug(但它们中的许多程序在本地 Windows 下运行也不能没有 bug!)。为了易于人们找出(track down)导致每个 bug 的原因。Wine 提供了许多用于窃听的调试通道。
   
    每个调试通道在活跃的时候,将触发把日记消息显示到你调用 wine 的控制台上。你可以把消息从它重定向到一个文件中并在你有空时检查它。但是要事先警告你! 一些调试通道可以生成难以置信的大量日记消息。最多产的犯罪分子(offender)有 relay,它在每次调用一个 win32 函数的时候吐出(spits out)一个日记消息,win ,它跟踪 windows 消息传递,当然还有 all ,它是所有现存的调试单一通道的一个别名。对于一个复杂的应用程序,你的调试日志文件可能很容易的就达到 1 MB 和更多。依赖于你运行程序多长时间,一个 relay 经常可以生成多于 10 MB 日志消息。记录日志使 Wine 减慢许多。所以除非你真的想要日记文件,否则不要使用 --debugmsg。
   
    在每个调试通道中,你可以进一步指定一个 message class,来过滤出不同严重程度的错误。四个消息类是: trace、fixme、warn、err。
   
    要开启一个调试通道,使用形式 class+channel。要关闭它,使用 class-channel。要在同一个 --debugmsg 选项中列出多于一个通道,用逗号分隔它们。例如,要求在 heap 通道中的 warn 类消息,你可以项下面这样调用 wine:
   
    $ wine --debugmsg warn+heap program_name
   
    如果你去掉了消息类,wine 将显示这个通道的所有四类消息:
   
    $ wine --debugmsg +heap program_name
           
    如果你想查看除了 relay 通道的所有日志消息,你可以象下面这样去做:
   
    $ wine --debugmsg +all,-relay program_name

    下面是在 Wine 中所有调试通道和类的一个主列表。在以后的版本中可能增添(或减去)更多的通道。
   
    all       aclearcase/" target="_blank" >ccel     advapi    animate   aspi      atom      avifile   bitblt  
    bitmap    caret     cdrom     class     clipboard clipping  combo     comboex 
    comm      commctrl  commdlg   console   crtdll    cursor    datetime  dc      
    ddeml     ddraw     debug     debugstr  delayhlp  dialog    dinput    dll     
    dosfs     dosmem    dplay     driver    dsound    edit      elfdll    enhmetafile
    event     exec      file      fixup     font      gdi       global    graphics
    header    heap      hook      hotkey    icmp      icon      imagehlp  imagelist
    imm       int       int10     int16     int17     int19     int21     int31   
    io        ipaddress joystick  key       keyboard  ldt       listbox   listview
    local     mci       mcianim   mciavi    mcicda    mcimidi   mciwave   mdi     
    menu      message   metafile  midi      mmaux     mmio      mmsys     mmtime  
    module    monthcal  mpr       msacm     msg       msvideo   nativefont nonclient
    ntdll     odbc      ole       opengl    pager     palette   pidl      print   
    process   profile   progress  prop      propsheet psapi     psdrv     ras     
    rebar     reg       region    relay     resource  richedit  scroll    segment 
    seh       selector  sendmsg   server    setupapi  setupx    shell     snoop   
    sound     static    statusbar storage   stress    string    syscolor  system  
    tab       tape      tapi      task      text      thread    thunk     timer   
    toolbar   toolhelp  tooltips  trackbar  treeview  ttydrv    tweak     typelib 
    updown    ver       virtual   vxd       wave      win       win16drv  win32   
    wing      win.net   winsock   winspool  wnet      x11       x11drv   
           

    关于调试通道的详情,请查看 Wine 开发者指南。
   
    5.2.2. --desktop [几何]
    缺省的,wine 在你的正规桌面上运行应用程序。Wine 应用程序与本地 X11 应用程序混合在一起。窗口相互交叠,并且你可以在相互关系中调整它们的大小。通常,当你最小化 Wine 窗口的时候,它们缩小(collapse)成在你的桌面左下角的一个小图标,躲避你的其他非 Wine 窗口的行为。但是,如果你运行在 --managed 模式中,你的 Wine 应用程序将象其他程序那样最小化。
   
    有时,你可能要把 Wine 窗口限制于你的桌面中小一些的一个区域中。这由 --desktop 选项来控制。 当你把这个选项传递给 wine 的时候,它将建立这么大的一个窗口并作为 Wine 桌面而不再借用正规的桌面空间。Wine 将接着把应用程序窗口放置到这个新桌面窗口中。如果你最小化这个应用程序,它将在它自己的桌面窗口的左下角图标化(iconize)。
   
    --desktop 选项的几何信息使用标准的 X11 几何格式,例如,"640x480" 是 640 象素宽和 480 象素高的一个桌面窗口。你还可以在几何中指定桌面窗口的左上角的坐标,但你的窗口管理器可能选择屏弃你的要求。下列调用将在坐标(10, 25)打开一个新的 640 x 480 桌面窗口: $ wine --desktop 640x480+10+25 foo.exe 
   
    更常见的是,你去掉起点坐标,而只使用高度和宽度: $ wine --desktop 640x480 foo.exe 
   
    5.2.3. --display
    缺省的,wine 在 $DISPLAY 环境变量中的那个 X 显示器上显示它的窗口。通常,$DISPLAY 被设置为 :0,它把所有窗口发送到你的当前宿主主机上的主视频监视器上。
   
    要包窗口发送到在同一个系统上的一个不同的监视器上,你需要把 :0 变更为一个不同的数,例如,设置为 :1 来发送到第二监视器上。你还可以指定其他系统。如果你登录到一个系统 alpha,但想让 wine 在网络上的一个其他系统上运行,比如 beta,你可以使 $DISPLAY 的值为 beta:0。
   
    你还可以在你的 wine 命令行使用 --display 选项声明你的显示器的值。上面的例子的命令行如下:
   
    $ wine --display="beta:0" foo.exe
           
    5.2.4. --dll   
   
    5.2.5. --dosver
       
    5.2.6. --help
       
    5.2.7. --language
       
    5.2.8. --managed     
   
    5.2.9. --synchronous    
   
    5.2.10. --version
      

原文转自:http://www.ltesting.net