CBETA 論壇 Goto CBETA
一月 22, 2017, 05:05:06 下午 *
歡迎光臨, 訪客. 請先 登入註冊一個帳號.

請輸入帳號, 密碼以及預計登入時間
新聞: 即日起歡迎使用 CBETA 新版討論區,本討論區僅供閱讀。
 
   首頁   說明 搜尋 登入 註冊  
頁: [1]
  列印  
作者 主題: Wine下大藏经已经完美运行,成功!^_^  (閱讀 15649 次)
小白角
二星級
**
文章: 45



« 於: 七月 10, 2008, 02:30:23 下午 »

   Wine下大藏经已经完美运行,CrossOver的内核是基于Wine的,它的容器概念其实也是源自于Wine本身的一个概念,但是,直接用Wine运行大藏经,会出错,因为大藏经使用了Xml  Parser和繁体中文,还有一些dll,而这些wine本身是不具备的,需要进行设置。
   开始的时候,一直想用Wine安装一个IE,然后在同一个目录里面安装大藏经,结果试了7天,都是失败了,在第八天的时候,突然产生了一个灵感,把CrossOver和Wine的安装目录交错覆盖,结果成功了2次,但是会产生linux界面的崩溃。
   接着,进一步,发现Wine本身有一个注册表,和一个winecfg的配置程序,在这个基础上,对比CrossOver下的大藏经,从容器中的windows\system32下找到了大藏经需要的主要的7个dll和用来显示右边经文和下面注释的3个dll,加上Xml  Parser的注册表导入,终于成功了!
下面是截图,^_^,呵呵

1.首先在一个安装好wine1.0或者wine1.10的linux下运行:winecfg (wine的配置程序),wine会自动生成一个文件夹:root/.wine,它里面就是一个windows环境容器。
« 最後編輯時間: 七月 12, 2008, 08:45:43 下午 由 小白角 » 已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
小白角
二星級
**
文章: 45



« 回覆文章 #1 於: 七月 10, 2008, 02:37:28 下午 »

拷贝大藏经主要函数7个dll到windows容器中的windows\system32目录中,如图:


拷贝大藏经右边经文显示和右下经文点击解释相关3个dll,其中的MSLS31.DLL和MSXML3R.DLL是负责经文显示功能的,而JSCRIPT.DLL是负责右下经文点击解释功能的
已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
小白角
二星級
**
文章: 45



« 回覆文章 #2 於: 七月 10, 2008, 02:45:25 下午 »

拷贝繁体中文字体:mingliu.ttf到windows容器中的windows\Fonts:

在命令行运行regedit,这个命令是wine本身给予它的windows容器的,运行的是容器中的的windows的注册表

导入含有XML和IE6的注册表文件,并且事先在这个文件中已经修改了默认显示为mingliu.ttf

并且在wincfg中这样设置
已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
小白角
二星級
**
文章: 45



« 回覆文章 #3 於: 七月 10, 2008, 02:49:31 下午 »

找到存放大藏经的目录,是已经安装好了的
打开一个终端输入命令:wine  cbreader.exe

大藏经完美运行,如图:

已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
小白角
二星級
**
文章: 45



« 回覆文章 #4 於: 七月 10, 2008, 02:53:57 下午 »

在最后的一张图中可以看到wine运行的时候的出错和提示信息,已经通过辅助dll进行了完善,出错已经减少了许多
在用辅助dll进行完善之前,大藏经的运行没有任何问题,为了更稳定些,因此用辅助dll进行了完善,进一步完善需要修改linux的内核,这些属于辅助的部分了,因此可以慢慢来做,^_^
已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
小白角
二星級
**
文章: 45



« 回覆文章 #5 於: 七月 10, 2008, 03:00:38 下午 »

这是辅助dll,目前有4个,进一步辅助的话,就会逐渐增加,为了稳定性

dxtrans.dll    MSHTMLED.DLL    winhook.dll    wininet.dll

这些dll都是windows本身的,一个可以正常运行大藏经的windows的system32目录下的

最后附件里面是修改好后的含有IE6和XML以及繁体中文mingliu字体设置的windows容器的注册表文件,用wine提供的regedit打开注册表后,导入,导入后,连CrossOver运行大藏经时的出现空白经文,需要点右键选择语言为:“自动选择”,都不需要了,是完美运行。
^_^
------------------------------------------
附带:关于佛学词典的chm文件,需要用linux下看chm的工具看,在CrossOver运行大藏经方法中已经给出。
已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
小白角
二星級
**
文章: 45



« 回覆文章 #6 於: 七月 12, 2008, 10:39:43 上午 »

继续,下面是linux下大藏经桌面快捷方式和菜单的创建方法
这样就可以不用命令行运行,而用快捷方式运行了:


已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
小白角
二星級
**
文章: 45



« 回覆文章 #7 於: 七月 14, 2008, 09:23:43 上午 »

继续进行:
      在跨平台的方式中,要知道大藏经的执行文件cbreader.exe,到底调用了windows的那些dll模块的话,可以借助这一个工具Depends(在附件里面)。
      用它打开cbreader.exe,就可以看见它调用的dlls和核心模块文件具体有那些,可以看到有很多,包括系统模块,是全部的。
      而这很多的dll,已经被wine提供,也就是说它们很多已经存放在了root\.wine\drive_c\windows\system32目录中,而上面提供的那7个主程序dll和3个辅助dll是除了这些被提供的dll之外的几个dll。
      这就是它们之间的关系。
已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
小白角
二星級
**
文章: 45



« 回覆文章 #8 於: 七月 16, 2008, 09:01:25 下午 »

继续联想:
   在MAC下的Wine是Darwine,下面是它的说明网页:
   http://www.kronenberg.org/darwine/
   下载地址:
   http://darwine.good-day.net/Darwine-x86-1.1.1.dmg
   在Darwine安装后,在Application中运行winehelper进行设置,然后就可以打开.exe文件了,winecfg在Darwine目录里面。
   目前这里只能进行猜测,用上面的方法,同样进行设置,应该和linux下一样,可以完美运行。
« 最後編輯時間: 七月 16, 2008, 09:15:05 下午 由 小白角 » 已記錄

传说公元12000前,在大西洋有个大西洲,名叫亚特兰蒂斯,是我们纯净之心和梦想的天堂。
頁: [1]
  列印  
 
前往:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.9 | SMF © 2006-2009, Simple Machines LLC Valid XHTML 1.0! Valid CSS!