huahero8 发表于 2013-4-25 19:52

wine 通达信软件

1.安装较新的wine版本,
应用程序>ubuntu软件中心搜索,并安装Wine Microsoft Windows Compatibility Layer。

2.下载并运行winetricks,然后安装TDX所需要的库:
wget http://www.kegel.com/wine/winetricks
chmod +x winetricks
./winetricks msxml3 gdiplus riched20 riched30 ie6 vcrun6 vcrun2005sp1 flash

3.准备所需的字体:
运行 winecfg,把模拟的 Windows 系统设置为 Windows XP 或者 Windows 2000;
拷贝你的c:\WINDOWS\Fonts目录内的以下几个字体到 ~/.wine/drive_c/windows/Fonts 目录内,字体:
svgafix.fontahomabd.ttfvga932.fonsimsun.ttc   svgasys.fontahoma.ttf    vga936.fon
cd ~/.wine/drive_c/windows/Fonts
ln -s simsun.ttc simfang.ttc
再把这几个字体文件放到 /usr/share/fonts/windows 中,(如果没有windows目录,自己创建一个吧)

gedit ~/.wine/system.reg##编辑 system.reg文件
搜索: FontSubstitutes
找到的行应该是:
将其中的:
"MS Shell Dlg"="Tahoma"
"MS Shell Dlg 2″="Tahoma"
改为:
"MS Shell Dlg"="SimSun"
"MS Shell Dlg 2″="SimSun"

gedit ~/.wine/drive_c/windows/win.ini##编辑 win.ini文件
在文件末尾加入:

menufontsize=13
messagefontsize=13
statusfontsize=13
IconTitleSize=13

在命令行执行 : wine regedit    ##编辑注册表
选中 HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes ,
然后把以下的键值全部改成 simsun , 如下:
      "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"
再查看 HKEY_LOCAL_MACHINE\System\CurrentControlSet\Hardware Profiles\Current\Software\Fonts 的内容,检查它们键值在我们的字体路径里已经存在了,OK。

4. 把在你的windows下安装好的通达信直接拷贝到linux的一个目录下,不用在wine下安装了,进入通达信安装目录,鼠标右键选择使用 Wine Windows Program Loader打开TdxW.exe。
只要不缺DLL文件,是可以正常启动的,但是中文会有乱码。别急:
点工具-系统设置,把字体全改成宋体。
”把字体设置V“里的每一项都改为"宋体"

huahero8 发表于 2013-4-25 19:58

wine中文乱码终极解决办法(转贴,有修改)


一、问题
ubuntu10.04,wine运行证券软件时,软件窗口内的股票名称总是乱码,如果我们一定要修改字体,会直接导致wine的证券程序崩溃。
也就是说,如果我们照常执行如下步骤:
1、进入工具—系统设置—外观-字体设置
2、一项一项修改设置,把字体调成中文字体,并且一定要选择中文编码
可是,只要一确认,就直接悲剧,wine的证券程序瞬间挂彩。

二、排查
是什么问题导致这种现象的发生呢?只好一一排查。
1、查字体。可是,明明微软字体已经装上。至于我们把微软字体装在/usr/share/fonts/truetype目录中,还是装在/home /smsl/.fonts目录中,其实都是可以的,只要二者选一就行了。而在/home/smsl/.wine/drive_c/windows /Fonts中,经实践检验,根本没有装微软字体的必要。
2、查wine。可是,wine也已经装上,而且运行dreamweaver8时一切正常。其实,只要有装好了wine就行了,至于是wine1.2还是wine1.3,也都是可以的。
微软字体与wine两者都有了,为什么东兴证券中的字体无法更改,而且一改程序就崩溃呢。

三、试验
谷歌是伟大的,一搜就搜出了各种解决办法。于是,摸索着要自己解决问题。
国内的不管什么证券,基本都是用通达信的东西。自我感觉“ubuntu下wine招商证券”一文中给wine打上汉化补丁,也许是比较好的办法。于是,按 照文中的说法,在http://forum.ubuntu.org.cn/download/file.php?id=37311里,下载并解压出当中的 汉化补丁gdi32.dll.so。
然后,开始执行如下命令:
sudo mv /usr/lib/wine/gdi32.dll.so /usr/lib/wine/gdi32.dll.so.backup
sudo cp gdi32.dll.so /usr/lib/wine
结果,一启动东兴证券,就发现更加悲剧,登录窗口都几乎不见了,只剩下了客户号、认证口令几个框,还可以见着影子。看来,这个汉化补丁,是前两年出的补丁,赶不上日益进步的wine。
改注册表的办法,倒是没试,因为感觉完全没有必要。毕竟,原来我是多次成功wine过东兴证券的,并且从来没有修改过注册表。

四、解决
究竟是什么问题造成的呢?
想来想去问题肯定出在,虽然已经装好了wine,但是却没有wine好东兴证券。还好单位的网管yufeng是一个linux专家,一沟通之后,答案立马 出来,正是wine东兴证券时,微软下面的库文件一类的东西没有装全,只要少那么一两样,自然就会导致悲剧。
但我明明在新利得里安装wine时,见着winetricks也被一并安上了。而且我也知道winetricks,可以帮助解决我们在wine微软程序 时,会自动补全所需文件。网管与我找到了症结:原来,悲剧就在这里,新利得里见着的winetricks,误导了我。那仅仅代表我们装上了一个工具—— winetricks,并不代表我们已经执行过winetricks,去补全过东西。
于是,下面就一路坦途,解决问题过程如下:
1、备份
备份是一种好习惯,这样才能保证万无一失。我们一定要事先备份好/home/smsl/下的“.wine”文件夹,仍然放在/home/smsl/目录下,就叫“.winebak”好了。这样,不仅好记,想恢复时还不会错。
2、检测
打开终端,进入/home/smsl/.wine/dosdevices/c:/new_dxzq_v6目录后,执行wine TdxW.exe。
很快,我们就可以在终端里看到结果,即某某文件“no find”。正是这个没有找到的某某文件,导致wine出来的东兴证券出现问题。
3、安装文件
仍然在终端里,执行“winetricks ××××(即没有找到的某某文件)”。如果还缺少什么文件,我们就如法执行“winetricks ××××”一一安上。
4、重装程序
全部重新安装所有wine的程序,如东兴证券、dreamweaver8等。这样,系统/home/smsl/中的“.wine”就是全新的了,与原来的那个备份“.winebak”并不一样。
5、更改字体
启动东兴证券,就可以正常更改字体了。仍按照
a、进入工具—系统设置—外观-字体设置
b、一项一项修改设置,把字体调成中文字体,并且一定要选择中文编码
点击确定后,股票名称乱码就圆满解决了。

五、结论
不管是wine的通达信证券程序出问题,还是wine的其他软件出问题,这都是最终极的解决办法。
其实,我们要wine任何微软程序,最好都在终端里,直接用winetricks来安装。这里http://wiki.winehq.org /winetricks有可以直接winetricks的程序及文件列表。这样,我们会省去单纯wine安装程序,所带来的这样那样的麻烦。
页: [1]
查看完整版本: wine 通达信软件