打印

wine下的flashfxp(中文的){应wxz8要求,加上

wine下的flashfxp(中文的){应wxz8要求,加上

我正在考虑怎么来写这个东西的安装。
安装的过程:
我的系统是RH7.3,其实自带有wine,不过不能支持中文,要想支持中文只能下载源代码自己修改一下(新版本不需要修改)。不过很简单,首先到http://www.winehq.com去下载一个源码包,最新的是20020804.解开(最好以非root用户),然后修改这个文件:wine-20020804/graphic/x11drv/codepage.c,查找到
for (i = 0; i < count; i++, str_src++, str2b_dst++)
    {
        if ( IsLegalDBCSChar_cp936( *str_src, *(str_src+1) ) )
        {
            str2b_dst->byte1 = *str_src ;
            str2b_dst->byte2 = *(str_src+1) ;
            str_src++;
        }
        else
        {
            str2b_dst->byte1 = 0;
            str2b_dst->byte2 = *str_src;
        }
    }
改为
for (i = 0; i < count; i++, str_src++, str2b_dst++)
    {
        if ( IsLegalDBCSChar_cp936( *str_src, *(str_src+1) ) )
        {
            str2b_dst->byte1 = *str_src &0x7f;
            str2b_dst->byte2 = *(str_src+1) &0x7f;
            str_src++;
        }
        else
        {
            str2b_dst->byte1 = 0;
            str2b_dst->byte2 = *str_src;
        }
    }
如果你有win98一类的windows系统,把它mount到一个目录上。是2K或XP并用NTFS格式的就算了,把没有用的windows分区都umount了,因为有可能造成一些不太好的影响。
然后在wine-20020804的目录下运行tools/wineinstall(必须非root用户,如果前面以root用户解压的话,可能还需要修改属性)。
基本上按照提示就可以了。让选yes/no的话都选yes。
最后会选择windows的路径,如果前面有monut的话,自己会找到,没有的话会建立一个的,虽然这样会有一些程序运行起来有问题,不过可以完全的脱离windows(主要是一些DLLS的问题)。
可能还需要修改wine的配置文件,这个明天再说吧。
附件: 您所在的用户组无法下载或查看附件

TOP

还能运行的有(暂时的):Hyper-Snap,几何画板等等。我会做一个列表出来的。

TOP

我装过几次了,但每次装后运行wine都是提示~/.wine找不到,该怎么解决?

TOP

搞定!winRAR3.0中文版 可以运行!
附件: 您所在的用户组无法下载或查看附件

TOP

WINE的配置文件详细。

wine的配置文件在~/.wine/config.如果是用我的方法安装的话应该自己就有。有的人说wine不能运行,很有可能就是这个文件的问题,下面我就来说说这个文件的具体内容。首先是类似于这样的一些内容
[Drive C]    (C就是指定盘符,也可以是D,E....J)
"Path" = "/home/liudi/c"   (这是盘符所在的真实路径,必须在这里指定以后才可以在这个路径下用wine,如果想在系统里都能用,可能指定为/)
"Type" = "hd"             (磁盘类型,可以是floppy(软盘),hd(硬盘),cdrom(光驱),network(网络盘))
"Label" = "MS-DOS"   (磁盘卷标,可以随便,不要重复就行)
"Filesystem" = "win95"  (文件系统类型,是指模拟出来的,可以是FAT16的: 'msdos'/'dos'/'fat',FAT32的: 'win95'/'vfat',UNIX的:'unix".一般情况下用win95就行,真实的文件系统可以是ext2,ext3和fat32.unix类型最好不用)
对于光驱和软驱还有这样的"Device" = "/dev/cdrom",很容易理解了。
下面是这样的一段
[wine]
"Windows" = "c:\\windows"
"System" = "c:\\windows\\system"
"Temp" = "e:\\"
"Path" = "c:\\windows;c:\\windows\\system;e:\\;e:\\test;f:\\"
"Profile" = "c:\\windows\\Profiles\\Administrator"
"GraphicsDriver" = "x11drv"
; Wine doesn't pass directory symlinks to Windows programs by default.
; Enabling this may crash some programs that do recursive lookups of a whole
; subdir tree in case of a symlink pointing back to itself.
;"ShowDirSymlinks" = "1"
"ShellLinker" = "wineshelllink"
很容易能看懂,一般不用修改,除非有特殊要求,如果是2K/XP,注意system目录应该是system32.
中间的各段基本都不用改(当然要改也没问题,出了问题再改回来就是了:))
一直到
[fonts]
;Read the Fonts topic in the Wine User Guide before adding aliases
;See a couple of examples for russian users below
"Resolution" = "96"
"Default" = "-misc-songtil-*-*-*--*-*-*-*-*-*-gb2312.1980-0"
"DefaultFixed" = "-misc-songtil-*-*-*--*-*-*-*-*-*-gb2312.1980-0"
"DefaultSerif" = "-misc-songtil-*-*-*--*-*-*-*-*-*-gb2312.1980-0-"
"DefaultSansSerif" = "-misc-songtil-*-*-*--*-*-*-*-*-*-gb2312.1980-0"
这里是设置wine使用的字体,最好使用windows下的宋体,如果LINUX已经汉化的话,应该有宋体吧。上面的songtil是我系统上宋体的名字,如果你系统是simsun的话就换成simsun.
下面的是字体路径
[FontDirs]
;"dir1" = "/usr/X11R6/lib/X11/fonts/simsun"
;"dir2" = "/usr/share/fonts/truetype"
;"dir3" = "/usr/X11R6/lib/X11/fonts/TT"
;"dir4" = "/usr/share/fonts/TT"
注意把其中一个设成你的宋体所在的路径,并把;去掉。
下面的基本上就不用改了。这样就能运行wine了,如果想以root运行就在root目录下建立一个.wine目录,把config文件放过来就行了。
附件: 您所在的用户组无法下载或查看附件

TOP

下面是我的CONFIG文件
WINE REGISTRY Version 2
;; All keys relative to \\Machine\\Software\\Wine\\Wine\\Config

[Drive C]
"Path" = "/mnt/win_c"
"Type" = "hd"
"Filesystem" = "vfat"

[Drive D]
"Path" = "/mnt/win_d"
"Type" = "hd"
"Filesystem" = "vfat"

[Drive E]
"Path" = "/mnt/win_e"
"Type" = "hd"
"Filesystem" = "vfat"

[Drive F]
"Path" = "/mnt/win_f"
"Type" = "hd"
"Filesystem" = "vfat"

[Drive G]
"Path" = "/mnt/cdrom"
"Type" = "cdrom"
"Device" = "/dev/cdrom"
"Filesystem" = "win95"

[Drive H]
"Path" = "/tmp"
"Type" = "hd"
"Filesystem" = "win95"

[Drive I]
"Path" = "${HOME}"
"Type" = "network"
"Filesystem" = "win95"

[wine]
"windows" = "C:\\windows"
"system" = "C:\\windows\\SYSTEM32" ;原来为SYSTEM,因为系统为XP,   ;所以改为SYSTEM32,但改了之后昨晚有一个可以运行的软件无法运行了
"path" = "C:\\windows\\system32\\dllcache;C:\\windows\\system32;C:\\windows\\system32\\wbem;C:\\windows\\msagent\\intl;C:\\windows\\system32\\Setup;C:\\windows;C:\\windows\\$NtUninstallQ282010$;C:\\windows\\ime\\imjp8_1;C:\\windows\\system32\\usmt;C:\\windows\\system;C:\\windows\\msagent;C:\\windows\\pchealth\\helpctr\\Binaries;C:\\windows\\$NtUninstallQ309521$;C:\\windows\\ime\\imjp8_1\\applets;C:\\windows\\system32\\oobe;C:\\windows\\AppPatch;C:\\windows\\Driver Cache\\i386;C:\\windows\\Help;C:\\windows\\$NtUninstallQ315000$;C:\\windows\\WinSxS\\x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries_6595b64144ccf1df_6.0.0.0_x-ww_ff9986d7;C:\\windows\\$NtUninstallQ319580$;C:\\windows\\ime\\shared\\res;C:\\windows\\ime\\chtime\\Applets;C:\\windows\\ime\\imkr6_1;C:\\windows\\$NtUninstallQ318138$;C:\\windows\\system32\\Com;C:\\windows\\srchasst;C:\\windows\\$NtUninstallQ314147$;C:\\windows\\ime\\shared;C:\\windows\\ime;C:\\windows\\system32\\ime\\pintlgnt;C:\\windows\\system32\\ime\\tintlgnt;C:\\windows\\$NtUninstallQ317277$;C:\\windows\\ime\\chsime\\applets;C:\\windows\\system32\\ime\\cintlgnt;C:\\windows\\ime\\imkr6_1\\Applets;C:\\windows\\WinSxS\\x86_Microsoft.Windows.CPlusPlusRuntime_6595b64144ccf1df_7.0.0.0_x-ww_2726e76a;C:\\windows\\system32\\npp;C:\\windows\\system32\\Restore;C:\\windows\\$NtUninstallQ311542$\\spuninst;C:\\windows\\$NtUninstallQ320174$;C:\\windows\\system32\\mui\\0804;C:\\windows\\$NtUninstallQ309521$\\spuninst;C:\\windows\\Resources\\Themes\\Luna\\Shell\\Homestead;C:\\windows\\WinSxS\\x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.0.1_x-ww_8d353f14;C:\\windows\\ime\\imkr6_1\\Dicts;C:\\windows\\Resources\\Themes\\Luna\\Shell\\NormalColor;C:\\windows\\Resources\\Themes\\Luna\\Shell\\Metallic;C:\\windows\\WinSxS\\x86_Microsoft.Windows.Common-Controls_6595b64144ccf1df_6.0.0.0_x-ww_1382d70a;C:\\windows\\$NtUninstallQ311967$\\spuninst;C:\\windows\\$NtUninstallQ315000$\\spuninst;C:\\windows\\system32\\wbem\\xml;C:\\windows\\$NtUninstallQ320174$\\spuninst;C:\\windows\\Help\\Tours\\mmTour;C:\\windows\\$NtUninstallQ311889$\\spuninst;C:\\windows\\$NtUninstallQ318138$\\spuninst;C:\\windows\\WinSxS\\x86_Microsoft.Tools.VisualCPlusPlus.Runtime-Libraries.Resources_6595b64144ccf1df_6.0.0.0_zh-CN_5e1fba9c;C:\\windows\\system32\\1033;C:\\windows\\WinSxS\\x86_Microsoft.Windows.GdiPlus_6595b64144ccf1df_1.0.0.0_x-ww_8d353f13;C:\\windows\\inf;C:\\windows\\system32\\MsDtc\\Trace;C:\\windows\\$NtUninstallQ314147$\\spuninst;C:\\windows\\$NtUninstallQ314862$\\spuninst;C:\\windows\\$NtUninstallQ318966$\\spuninst;C:\\windows\\$NtUninstallQ315403$\\spuninst;C:\\windows\\$NtUninstallQ311889$;C:\\windows\\Installer\\{94A7D275-E658-4B29-8C7F-2AAEF6CF453F};C:\\windows\\pchealth\\UploadLB\\Binaries;C:\\windows\\Installer\\{350C97B5-3D7C-4EE8-BAA9-00BCB3D54227};C:\\windows\\$NtUninstallQ319580$\\spuninst;C:\\windows\\$NtUninstallQ314862$;C:\\windows\\system32\\ReinstallBackups\\0002\\DriverFiles\\i386;C:\\windows\\$NtUninstallQ317277$\\spuninst;C:\\windows\\$NtUninstallQ282010$\\spuninst;C:\\windows\\system32\\2052"
"temp" = "D:\\temp"


[Version]
; Windows version to imitate (win95,win98,winme,nt351,nt40,win2k,winxp,win20,win30,win31)" },
;"Windows" = "win98"
; DOS version to imitate
;"DOS" = "6.22"

; Be careful here, wrong DllOverrides settings have the potential
; to pretty much kill your setup.
[DllOverrides]
"rpcrt4"       = "builtin, native"
"oleaut32"     = "builtin, native"
"ole32"        = "builtin, native"
"commdlg"      = "builtin, native"
"comdlg32"     = "builtin, native"
"ver"          = "builtin, native"
"version"      = "builtin, native"
"shell"        = "builtin, native"
"shell32"      = "builtin, native"
"shfolder"     = "builtin, native"
"shlwapi"      = "builtin, native"
"shdocvw"      = "builtin, native"
"lzexpand"     = "builtin, native"
"lz32"         = "builtin, native"
"comctl32"     = "builtin, native"
"commctrl"     = "builtin, native"
"advapi32"     = "builtin, native"
"crtdll"       = "builtin, native"
"mpr"          = "builtin, native"
"winspool.drv" = "builtin, native"
"ddraw"        = "builtin, native"
"dinput"       = "builtin, native"
"dsound"       = "builtin, native"
"opengl32"     = "builtin, native"
"msvcrt"       = "native, builtin"
"msvideo"      = "builtin, native"
"msvfw32"      = "builtin, native"
"mcicda.drv"   = "builtin, native"
"mciseq.drv"   = "builtin, native"
"mciwave.drv"  = "builtin, native"
"mciavi.drv"   = "native, builtin"
"mcianim.drv"  = "native, builtin"
"msacm.drv"    = "builtin, native"
"msacm"        = "builtin, native"
"msacm32"      = "builtin, native"
"midimap.drv"  = "builtin, native"
; you can specify applications too
"notepad.exe"  = "native, builtin"
; default for all other dlls
"*" = "native, builtin"

[x11drv]
; Number of colors to allocate from the system palette
"AllocSystemColors" = "100"
; Use a private color map
"PrivateColorMap" = "N"
; Favor correctness over speed in some graphics operations
"PerfectGraphics" = "N"
; Color depth to use on multi-depth screens
;;"ScreenDepth" = "16"
; Name of X11 display to use
;;"Display" = ":0.0"
; Allow the window manager to manage created windows
"Managed" = "Y"
; Use a desktop window of 640x480 for Wine
;"Desktop" = "640x480"
; Use XFree86 DGA extension if present
; (make sure /dev/mem is accessible by you !)
"UseDGA" = "Y"
; Use XShm extension if present
"UseXShm" = "Y"
; Use XVidMode extension if present
"UseXVidMode" = "Y"
; Enable DirectX mouse grab
"DXGrab" = "N"
; Create the desktop window with a double-buffered visual
; (useful to play OpenGL games)
"DesktopDoubleBuffered" = "N"
; Code page used for captions in managed mode
; 0 means default ANSI code page (CP_ACP == 0)
"TextCP" = "0"
; Use this if you have more than one port for video on your setup
; (Wine uses for now the first 'input image' it finds).
;; "XVideoPort" = "43"
; Run in synchronous mode (useful for debugging X11 problems)
;;"Synchronous" = "Y"

[fonts]
;Read the Fonts topic in the Wine User Guide before adding aliases
;See a couple of examples for russian users below
"Resolution" = "96"
"Default" = "-misc-songtil-*-*-*--*-*-*-*-*-*-gb2312.1980-0"   ;我的系统是
;mandrake9。0beta2,用simsun汉化过,但改了之后字体好像没有变化
"DefaultFixed" = "-misc-songtil-*-*-*--*-*-*-*-*-*-gb2312.1980-0"
"DefaultSerif" = "-misc-songtil-*-*-*--*-*-*-*-*-*-gb2312.1980-0-"
"DefaultSansSerif" = "-misc-songtil-*-*-*--*-*-*-*-*-*-gb2312.1980-0"

;; default TrueType fonts with russian koi8-r encoding
;"Default" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultFixed" = "-monotype-courier new-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultSerif" = "-monotype-times new roman-*-*-*--*-*-*-*-*-*-koi8-r"
;"DefaultSansSerif" = "-monotype-arial-*-*-*--*-*-*-*-*-*-koi8-r"
;; default cyrillic bitmap X fonts
;"Default" = "-cronyx-helvetica-"
;"DefaultFixed" = "fixed"
;"DefaultSerif" = "-cronyx-times-"
;"DefaultSansSerif" = "-cronyx-helvetica-"

; the TrueType font dirs you want to make accessible to wine
[FontDirs]
"dir1" = "/usr/X11R6/lib/X11/fonts/drakfont"
;"dir2" = "/usr/share/fonts/truetype"
;"dir3" = "/usr/X11R6/lib/X11/fonts/TT"
;"dir4" = "/usr/share/fonts/TT"

[serialports]
"Com1" = "/dev/ttyS0"
"Com2" = "/dev/ttyS1"
"Com3" = "/dev/ttyS2"
"Com4" = "/dev/modem"

[parallelports]
"Lpt1" = "/dev/lp0"

[ppdev]
;; key:  io-base of the emulated port
;; value : parport-device{,timeout}
;; timeout for auto closing an open device ( not yet implemented)
;"378" = "/dev/parport0"
;"278" = "/dev/parport1"
;"3bc" = "/dev/parport2"

[spooler]
"FILE:" = "tmp.ps"
"LPT1:" = "|lpr"
"LPT2:" = "|gs -sDEVICE=bj200 -sOutputFile=/tmp/fred -q -"
"LPT3:" = "/dev/lp3"

[ports]
;"read"  = "0x779,0x379,0x280-0x2a0"
;"write" = "0x779,0x379,0x280-0x2a0"

[Debug]
;"RelayExclude" = "RtlEnterCriticalSection;RtlLeaveCriticalSection"
;"RelayInclude" = "user32.CreateWindowA"
;"SnoopExclude" = "RtlEnterCriticalSection;RtlLeaveCriticalSection"
;"SpyExclude" = "WM_SIZE;WM_TIMER;"

[registry]
;These are all booleans.  Y/y/T/t/1 are true, N/n/F/f/0 are false.
;Defaults are read all, write to Home
; Global registries (stored in /etc)
"LoadGlobalRegistryFiles" = "Y"
; Home registries (stored in ~user/.wine/)
"LoadHomeRegistryFiles" = "Y"
; Load Windows registries from the Windows directory
"LoadWindowsRegistryFiles" = "Y"
; TRY to write all changes to home registries
"WritetoHomeRegistryFiles" = "Y"
; Registry periodic save timeout in seconds
; "PeriodicSave" = "600"
; Save only modified keys
"SaveOnlyUpdatedKeys" = "Y"

[Tweak.Layout]
;; supported styles are 'Win31'(default), 'Win95', 'Win98'
;; this has *nothing* to do with the windows version Wine returns:
;; set the "Windows" value in the [Version] section if you want that.
"WineLook" = "Win95"

[Console]
;"Drivers" = "tty"
;"XtermProg" = "nxterm"
;"InitialRows" = "25"
;"InitialColumns" = "80"
;"TerminalType" = "nxterm"

[Clipboard]
"ClearAllSelections" = "0"
"PersistentSelection" = "1"

; List of all directories directly contain .AFM files
[afmdirs]
"1" = "/usr/share/ghostscript/fonts"
"2" = "/usr/share/a2ps/afm"
"3" = "/usr/share/enscript"
"4" = "/usr/X11R6/lib/X11/fonts/Type1"

[WinMM]
"Drivers" = "wineoss.drv"
#"Drivers" = "winearts.drv"
"WaveMapper" = "msacm.drv"
"MidiMapper" = "midimap.drv"

[dsound]
;; HEL only: Number of waveOut fragments ahead to mix in new buffers.
;"HELmargin" = "5"
;; HEL only: Number of waveOut fragments ahead to queue to driver.
;"HELqueue" = "5"
;; Max number of fragments to prebuffer
;"SndQueueMax" = "28"
;; Min number of fragments to prebuffer
;"SndQueueMin" = "12"

;; sample AppDefaults entries
;[AppDefaults\\iexplore.exe\\DllOverrides]
;"shlwapi" = "native"
;"rpcrt4" = "native"
;"ole32" = "native"
;"shdocvw" = "native"
;"wininet" = "native"
;"shfolder" = "native"
;"shell32" = "native"
;"shell" = "native"
;"comctl32" = "native"
;
;[AppDefaults\\setup.exe\\x11drv]
;"Desktop" = "800x600"
;
;[AppDefaults\\sol.exe\\Version]
;"Windows" = "nt40"
;
;; Some games (Quake 2, UT) refuse to accept emulated dsound devices.
;; You can add an AppDefault entry like this for such cases.
;[AppDefaults\\pickygame.exe\\dsound]
;"EmulDriver" = "N"

TOP

我试过的可以运行的还有flash5,winamp,streambox vcr都可以正常运行。
BTW:这个贴子里的对源代码的改动是参考了LINUXSIR上wxz8大侠的贴子。不知道是不是我忘了写而得罪了他。如果是,我先说一声对不起。

TOP

darlin:试试将这个
[Version]
; Windows version to imitate (win95,win98,winme,nt351,nt40,win2k,winxp,win20,win30,win31)" },
;"Windows" = "win98"  《--改成winxp
; DOS version to imitate
;"DOS" = "6.22"
或者system32改成小写,最好把你的出错信息贴出来。
BTW:以后这种长文字最好还是做为附件吧。
关于字体的问题,你是说改了以后wine的字体没变化,还是系统的字体?还有songtil已经加到fonts.dir中了吗?

TOP

指的是wine的字体。
最主要的出错信息:
err:ntdll:RtlpWaitForCriticalSection section 0x6307810c "?" wait timed out, retrying (60 sec) tid=080726e0

TOP

能把你的字体fonts.dir贴上来吗?

TOP

经过再次实验,证明新版的wine已经无需修改源代码了,这个patch的提交大概是4月份,所以5月以后的应该都行了,把simsun.ttf放在windows/Fonts下面就行了。

TOP

How about flashget?

Does it work fine under windows 2000?

Thanks,

TOP

no.不正常,用winex到是正常,只是不能显示中文,只能用英文界面了。

TOP