QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6141|回复: 12

关于Wine下面QQ乱码问题的说明

[复制链接]
发表于 2003-4-22 21:55:48 | 显示全部楼层 |阅读模式
shuishou说QQ输入有乱码,有人说没有。原因是这样的,有乱码的是新版带有表情的那个版本,没有乱码的是旧版的没有表情支持的版本。乱码是由 RichEdit 引起的,暂时我没有找到解决办法。这个问题在很多地方都存在,比如Windows的写字板也存在这个问题。
 楼主| 发表于 2003-4-22 21:57:44 | 显示全部楼层
另外,很抱歉,shuishou你那篇Wine下面运行QQ的帖子让我回复时,无意中删掉了。我不是故意的(你也知道我没有删掉你帖子的权限).
回复

使用道具 举报

发表于 2003-4-25 11:33:19 | 显示全部楼层
呵呵~~~难怪我怎么都找不到了的。――这的确是个问题,我以前也打算把自己发的一篇回复删掉的,但是结果把整个帖子都给删掉了。里面还有一些其他很多人的回复。我还以为就我一个发生过这样的问题呢。  

多谢解答问题。想问一下,你是怎么找到原因的。我开始也发现我的qq和liuspider抓图中的qq有一些不同(我看到的是我的可以选择字体,而他的好像不可以。)但没有注意到表情的问题。

不过我现在找到的qq好像都带有表情,不知哪位能提供一个不带表情的珊瑚虫版本的qq。多谢。
回复

使用道具 举报

 楼主| 发表于 2003-4-25 15:06:32 | 显示全部楼层
我一直用的“QQ”其实是gaim,因为不是会员所以用Wine的QQ也不能用http代理,所以我从来没有用Wine运行过QQ。问题的发现是在我写的一个用了richedit控件的程序中发现的。后来在记事本和写字板上验证得到的答案。至于原因我也不是很清楚,因为richedit用的是native的dll,不是wine自带的dll.so,所以可能是richedit中调用的某些函数在wine自带的dll.so中没有实现以至于native的dll不能正常工作造成的。
回复

使用道具 举报

发表于 2003-4-25 17:40:11 | 显示全部楼层
既然知道原因,不知能不能提出一个现有问题的解决方法。
修改config文件,使wine运行的qq调用dll文件不出问题?
如添加合适的dll.so,或对特定的dll.so的调用方式改变?
对于技术方面的东西,洒家不大懂。不知该怎样做。:P
回复

使用道具 举报

发表于 2003-4-25 18:13:19 | 显示全部楼层
请站内短信通知liuspider,希望对他有帮助
回复

使用道具 举报

发表于 2003-4-25 20:39:16 | 显示全部楼层
我现在很少用QQ,用的话,也是和隐身的人聊天,所以我没有注意到会出现乱码--我如果在我的这个0825 coral 中给在线的人发信息,也会有乱码现象

我现在找到一个解决方案,到QQ的安装目录下,将
Riched32.dll 改个名字,如 Riched32.dll.bak
这样可以强行使用wine自带的 richedit 控件,我给wine加的输入中文的hack就可以正常工作了
回复

使用道具 举报

发表于 2003-4-25 20:51:19 | 显示全部楼层
[quote:658737b25f="andot"]我一直用的“QQ”其实是gaim,因为不是会员所以用Wine的QQ也不能用http代理,所以我从来没有用Wine运行过QQ。问题的发现是在我写的一个用了richedit控件的程序中发现的。后来在记事本和写字板上验证得到的答案。至于原因我也不是很清楚,因为richedit用的是native的dll,不是wine自带的dll.so,所以可能是richedit中调用的某些函数在wine自带的dll.so中没有实现以至于native的dll不能正常工作造成的。[/quote]

可以自己装个软件,通过 http 代理,走 socks5 ,我以前好像在哪看到过,你可以找找看
回复

使用道具 举报

 楼主| 发表于 2003-4-25 21:37:11 | 显示全部楼层
这样作还是会有乱码,因为还有一个Riched20.dll和Riched.dll在Wine里面没有。在写字板里面如果输入茶水,那个茶字就显示成问号了。还有好多的汉字都不对。

你说的那样的代理软件我以前用过Windows版的,Linux版的也有嘛?太好了。我要找找看了。
回复

使用道具 举报

发表于 2003-4-25 22:10:58 | 显示全部楼层
QQ 中 riched20.dll 是 riched32.dll 需要的,将 riched32.dll 改名后,wine 就会使用自带的了,所以 riched20.dll 也就不会再被加载了

这个方案仅对QQ有效

如果想在别的程序中也使用wine的richedit,也可如此办理:将他调用的riched32.dll 改名或删除就可以了

不知什么原因,我的机器上不能运行 write.exe,没有任何错误提示,看不到GUI,就自动退出了,所以没法在那试试看
回复

使用道具 举报

 楼主| 发表于 2003-4-25 22:16:21 | 显示全部楼层
你可以试一试,写字板不是write.exe,写字板在C:/Program Files/Accessories/目录里,叫WORDPAD.EXE,我是把riched32.dll删掉了,而且在config文件中还加了"riched32"="builtin,native",可是照样不管用。
回复

使用道具 举报

发表于 2003-4-25 23:29:09 | 显示全部楼层
测试现象:
系统:rh8。0,kde3。0,qq coral0825,

发现不管 riched32.dl改不改名,对隐身的人发信息都很正常。
如果将riched32.dll改名,对于在线的人,写信息时显示正常,但是接受的时候出现的是乱码。
回复

使用道具 举报

发表于 2003-4-26 20:51:11 | 显示全部楼层
[quote:9e4d0bb2ee="shuishou"]测试现象:
系统:rh8。0,kde3。0,qq coral0825,

发现不管 riched32.dl改不改名,对隐身的人发信息都很正常。
如果将riched32.dll改名,对于在线的人,写信息时显示正常,但是接受的时候出现的是乱码。[/quote]

我这里的情况完全一样。

我估计是 wine 自带的 richedit 对中文支持的问题,但是我现在暂时没找到问题所在
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-12-4 03:49 , Processed in 0.069842 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表