2007年2月21日星期三

Wine 模拟 QQGame 之旅

//=1======================================

我想把家里的那台老机器装成Ubuntu,不过考虑到老爸老妈有时候要玩QQGame,那么拿起Wine...go go go

QQ .com下载大厅是可以正常安装和打开的...但无法通过自动下载升级,
以四川麻将为例,
XP下操作
找个XP 下载斗地主,安装,在QQgame->scmj->Config.ini
能发现里面有类似下例的一大串
ClassID={CF5681A2-5717-472a-BAE8-BD1BA70E0A9A}

拷贝括号中的,然后在运行->Regedit将找到的项导出..
[b]如果[/b]所找到的项中有"AppID"="{4DB3DC38-8CC7-4369-AADA-2AD634CE4C51}"
依照前面方法搜索后面的一串,得到结果也导出
然后用文本编辑器打开所有导出项,拷贝合并后去掉根键,并将"\"改成"\\",改好后类似下面

[SOFTWARE\\Classes\\CLSID\\{CF5681A2-5717-472A-BAE8-BD1BA70E0A9A}]

@="QQGame.scMahjong"

"AppID"="{4DB3DC38-8CC7-4369-AADA-2AD634CE4C51}"



[SOFTWARE\\Classes\\CLSID\\{CF5681A2-5717-472A-BAE8-BD1BA70E0A9A}\\InprocHandler32]
@="ole32.dll"



[SOFTWARE\\Classes\\CLSID\\{CF5681A2-5717-472A-BAE8-BD1BA70E0A9A}\\LocalServer32]
@="D:\\QQGame\\Scmj\\scmj.exe



[SOFTWARE\\Classes\\CLSID\\{CF5681A2-5717-472A-BAE8-BD1BA70E0A9A}\\ProgID]
@="QQGame.scMahjong"

[Software\\Classes\\AppID\\{4DB3DC38-8CC7-4369-AADA-2AD634CE4C51}]
@="mj Document"

[Software\\Classes\\AppID\\scmj.exe]

"AppId"="{4DB3DC38-8CC7-4369-AADA-2AD634CE4C51}"


将这个添加到linux下~/.wine/system.reg 里面

然后把在XP下四川麻将安装后的文件拷贝到linux下安装QQ 大厅的相应目录

注册表信息的文件的目录信息"@="D:\\QQGame\\Scmj\\scmj.exe"要和你Linux下四川麻将文件放置的目录一样

然后启动大厅就可以看到四川麻将在列表上了...
能进去连接服务器,进入房间
但是点击座位有一个提示后跳出...无法开启游戏
我所作的努力暂时到这一步...期待各位的测试...
另外四川麻将的注册表多了个AppID,斗地主没有
大家要测试用斗地主更方便

我的Wine打开中文程序有乱码-无法看到错误信息是什么阻碍了进一步测试,

我正在解决乱码问题,
想着人多力量大,就先来发帖了,有兴趣的一起研究测试

:P


//=2======================================

在控制台看到了错误信息...

ole:CoGetClassObject no class object {cf5681a2-5717-472a-bae8-bd1ba70e0a9a} could be created for context 0x4

有不详的预感=.=..继续找方法

//=3======================================

方法就是安装Wine 0.9.31

这个版本解决了上面的建立ole对象问题...

配置按照我的来就没问题的了
我已经玩了几把四川麻将了.....哈哈自模了几把

联众和边锋应该都是类似的

厚着脸皮稍微讲一下我理解的QQGame的调用:P

大厅会读取QQGame文件下的config.ini
然后根据里面的游戏目录指示读取相应游戏的config.ini


游戏目录下的config.ini中有clsid 这个就是大厅用来寻找所调用游戏的门牌号了..
大厅会在注册表的Local_mechine下寻找此clsid来找到相关信息..

而Wine在安装游戏的时候并没有建立这些项,这就是为什么能装却不能在大厅里找到
大厅根据此clsid下提供的信息来调用指定的文件(早期wine版本会有对象建立的错误)
然后启动....


paly for fun :)
/=4======================================

上面是在Ubuntu中文站的发帖
说实在的....我想说上几句...
我之前搜索 Wine模拟QQGame..模拟联众等看到的几乎都是"不可能","没戏","装XP吧"
类似的字眼....但这个东西难么...不难...就在于听太多人说不可能就没人去做这当子事情...
却让我一个使用Linux两星期多点wine两星期不到的人来做

阻碍自己的也只有自己

powered by performancing firefox

没有评论: