Hackerl / Wine_Appimage

Appimage For Wine
480 stars 69 forks source link

是一个关于普通wine微信的问题 #13

Closed colibris79 closed 5 years ago

colibris79 commented 6 years ago

哇,你的微信AppImage太好了.一点都没问题. 不好意思我想问你关于我自已安装Wine微信的.现在能用,就是发文件不行.我知道是一个ole32.dll的问题.从网上下载了,在微信的目录拷贝了.在winecfg添加了'原装'模式.但是这样微信开不了.收到了:

0029:fixme:reg:RegOpenUserClassesRoot (0x64, 0x0, 0x2000000, 0x33f164) semi-stub
0029:fixme:ole:NdrCorrelationInitialize (0x33e59c, 0x33e72c, 1024, 0x0): semi-stub
0029:fixme:ole:NdrCorrelationFree (0x33e59c): stub
000d:fixme:reg:RegOpenUserClassesRoot (0x68, 0x0, 0x2000000, 0x33f968) semi-stub
0009:fixme:exec:SHELL_execute flags ignored: 0x00000100
0009:fixme:reg:RegOpenUserClassesRoot (0x54, 0x0, 0x2000000, 0x33dda8) semi-stub
0009:fixme:exec:SHELL_execute flags ignored: 0x00004100
002d:err:seh:raise_exception Unhandled exception code c00000fd flags 0 addr 0x7bc54c42

你的AppImage可以发文件.所以你知不知道我的问题怎么办? 我的电脑系统是LINUX MINT 18.3 (UBUNTU 16.04).WINE 3.0.2

Hackerl commented 6 years ago

你的思路是对的,微信发送文件,会调用 ole32.dll 中的 OleCreateStaticFromData 函数,由于 Wine 中该函数实现不完全,所以无法发送文件。所以我使用 native ole32.dll 替换,便可以发送文件。但是无法使用拖拽,不过可以使用复制粘贴发送文件。 可能你只配置了使用native ole32.dll,其他dll的依赖关系被破坏,或是你使用的dll不正确(我直接从xp系统之中复制),你可以解包appimage查看wine配置,对比你设置的dll使用设置。

colibris79 commented 6 years ago

你是对的! 使用了你的ole32.dll后,就可以发文件了. 太谢谢你了!

还有我的微信的字体有点差.你的真好看.但是在你的Fonts目录什么字体都没有.你怎么实现那么清楚的字体啊?

Hackerl commented 6 years ago

在注册表里面可以配置,将字体映射到Linux文件系统中,我安装了文泉驿字体,然后将字体对应到 /usr/share/fonts/truetype/wqy/wqy-microhei.ttc,你可以详细看看注册表配置。

colibris79 commented 6 years ago

好的.我会试一试. 谢谢你的帮忙

1049451037 commented 5 years ago

您好,请问可以详细说明一下ole32.dll怎么配置吗?小白对wine相关的术语不是太懂(比如解包appimage是什么意思?)同样是无法粘贴的问题。

Hackerl commented 5 years ago

@1049451037 https://www.jianshu.com/p/5ce61cbae73a https://linux.cn/article-8382-1.html https://kknews.cc/news/p8ve4mj.html