【几乎完美】Deepin v20beta wine 5.15 成功安装最新版钉钉
Tofloor
poster avatar
一一网络
deepin
2020-08-16 14:39
Author
本帖最后由 proyy_com 于 2020-8-16 09:10 编辑

1、自己安装wine或者直接用deepin-wine5 (deepin-wine cp dll时路径不一致记得替换)或者安装wine 5.15 deb文件见链接:https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/Debian_10/下载64位或者32位的deb包就行了,deepin v20bate 是debian 10 buster
dpkg -i ×.deb

如果你能科学或者网速特牛逼,反正我是78个小时都没装上winehq官方镜像源安装进度就2000-8000b的速度跑,太恶心了,
如果够牛逼,请参考winehq去安装wine吧
教程:https://wiki.winehq.org/Debian_zhcn
deepin是buster

安装wine直接开搞就行了,或者下载里面的xz包自行编译安装,最上面的链接里面有部分依赖deb(自己装wine依赖是个大坑)
2、最新问题说明:有阴影、以及任务栏无托盘显示,其他钉钉乱码、卡顿、崩溃、不能输入等等问题都不存在了。

(20200816 8:31 补充说明)
阴影或者钉钉黑框最小化一会儿就没了。

deepin主题
#########自行更改后面容器路径:
cp -arp ~/.deepinwine/Deepin-WeChat/drive_c/windows/Resources /home/root/.wine/drive_c/windows/Resources


wineboot -u






)


先上图




3、安装步骤、先安装wine、再安装winetricks,
然后用winetricks装一堆dll看你心情装吧,有的装不上正常,去掉前面的数字
322  apt install winetricks
  323  sudo apt install --install-recommends winetricks
  328  winetricks corefonts colorprofile
  329  winetricks fontfix fontsmooth-gray fontsmooth-rgb fontsmooth-bgr
  330  winetricks gdiplus
  331  winetricks d3dx9
  332  winetricks riched20 riched30
  333  winetricks mfc40 mfc42
  334  winetricks vcrun6 vb6run vcrun2003 vcrun2005 vcrun2008
  335  winetricks msxml3 msxml4 msxml6
  337  wine
tricks dlls gdiplus
  338  tsocks winetricks dlls gdiplus
  340  winetricks dlls vcrun2008 msxml6 corefonts
  341  winetricks dlls d3dx9 d3dcompiler_43 xact_jun2010
  372  winetricks vcrun2003 vcrun2005 vcrun2008 vcrun2010 vcrun2012 vcrun2013 vcrun2015
最后装winetricks dotnet46
4、下载wine-××msi放在~/.cache/wine/ 如果没有目录就自行创建
伸手党见这里
https://mirrors.cnnic.cn/winehq/wine/wine-mono/5.1.0/wine-mono-5.1.0-x86.msi
https://mirrors.cnnic.cn/winehq/wine/wine-gecko/2.47.1/wine-gecko-2.47.1-x86_64.msi
https://mirrors.cnnic.cn/winehq/wine/wine-gecko/2.47.1/wine-gecko-2.47.1-x86.msi
5、打开winetricks,选择默认容器、运行wincfg、Windows版本win10


我就没搞针对钉钉exe去配置了嫌麻烦
6、函数库,老规矩配置,版本选的是win10你就把你win10下的riched20.dl riched32.dll cp一波,win7就cpwin7吧没试过
cp你win10 的windows/syswow64里面的那2个dll到~/.wine/drive_c/windows/syswow64/下
cp你win10 的windows/system32里面的那2个dll到~/.wine/drive_c/windows/system32/下


函数库顶替中分别输入msvcp60、msvcp120、riched20、riched32,再点击添加






7、下载最新版本钉钉安装吧
https://dtapp-pub.dingtalk.com/dingtalk-desktop/win_installer/Release/DingTalk_v5.1.15.24.exe 安装后先不要勾选运行
8、字体
请copy win字体文件夹下对应字体 到容器的font目录,关键字体sim开头、msy开头的
然后搞注册表

新建wine_font.reg文件,输入以下内容,simsun是很多应用默认的字体

REGEDIT4[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]"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"复制出问题了请参考其他的文章弄下字体

在终端执行

wine regedit wine_font.reg



wineboot -u

9、特性开一开
钉钉 左上角头像 系统设置 最底下svg
哎呀论坛上不来图片了




10、桌面图标,自己换一下容器路径哟,我是root+wine

dedit /usr/share/applications/DingTalk.desktop

#!/usr/bin/env xdg-open
[Desktop Entry]
Encoding=UTF-8
Type=Application
X-Created-By=Deepin WINE Team
Categories=chat;
Path=/home/root/.wine/dosdevices/c:/Program Files (x86)/DingDing
Icon=/root/.wine/drive_c/Program Files (x86)/DingDing/main/current/logo.ico
Exec=env WINEPREFIX="/home/root/.wine" wine C:\\\\windows\\\\command\\\\start.exe /Unix /home/root/.wine/dosdevices/c:/users/Public/桌面/钉钉.lnk
Name=DingTalk
Name[zh_CN]=钉钉
Comment=DIngTalk Client on Wine by www.proyy.com
StartupWMClass=dingtalklauncher.exe
MimeType=





对了,告诉大家一下,我用的root账号哟
deepin v20 bate root登录 难搞哦还是成功了,intel+N卡驱动,建议先清空然后用大黄蜂方案不要用那p开头的切换软件,用v,关键词optirun bash搜索下吧,我忘记具体的了
请参考这个吧https://blog.csdn.net/weixin_38668842/article/details/106147705?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2~all~first_rank_v2~rank_v25-2-106147705.nonecase&utm_term=deepin%E5%AE%89%E8%A3%85%E5%A4%A7%E9%BB%84%E8%9C%82%E9%A9%B1%E5%8A%A8





deepin v20 bate系统更新后卡死黑屏花屏撕裂,
建议先不要不要系统升级等待@deepin 看能不能修复这个bug,多数用户受影响

系统更新会导致卡死黑屏花屏撕裂等问题
deepin v20 bate =》》v20社区版
千万别升级【x】 x这个东西 xorg xserver (如打错字请无视)
其他软件可以正常升级
我认为不是显卡驱动问题,是升级了x相关的一些包的配置导致的,可以重装v20bata 然后用apt更新,观察,很多deepin的包都被干掉了可以尝试搞一下/etc/X11/xorg.conf,我失败了。。。。。
如已经升级了,多切换2下分辨率可暂时解决

Reply Favorite View the author
All Replies
1 / 2
To page
一一网络
deepin
2020-08-16 14:49
#1
有问题可回复,私信等帮助解答
Reply View the author
一一网络
deepin
2020-08-16 17:28
#2
本帖最后由 proyy_com 于 2020-8-16 09:37 编辑

最新deepin-v20-bata用root登录操作有风险请及时备份数据哦

sudo dedit /etc/lightdm/lightdm.conf
改为下面这些
greeter-session=lightdm-gtk-greeter
greeter-hide-users=false
#greeter-allow-guest=true
greeter-show-manual-login=true
greeter-show-remote-login=true
user-session=deepin
保存
dedit /etc/lightdm/users.conf
500改成0,我觉得这个无所谓
其实还有、etc下pam模块也要注释一些,但是无所谓了因为调的是gtk
加apt 清华源
sudo apt install lightdm-gtk-greeter-settings
打开lightdm gtk 管理器
主题用deepin-dark
换个图片。(图片必须是可访问目录,不然黑屏,建议先放图片到/usr/share/backgrounds/)
权限755
再设置登录背景图片
root先改下家目录为/home/root 或者软链接一下
sudo passwd root 给root来个密码
sudo ln -snv /root /home/
sudo dedit /etc/passwd 给root改家目录
sudo dedit /etc/passwd- 给root改家目录

然后 cp -arp 普通用户家目录下的.bashrc .profile .Xauthority到root家目录下


reboot生效
图文参考一一网络:https://www.proyy.com/4090.html
Reply View the author
beautycell
deepin
2020-08-16 17:49
#3
我浏览一下  没有读到关于是否可以视频的描述
Reply View the author
一一网络
deepin
2020-08-16 17:50
#4
https://bbs.deepin.org/post/199566
我浏览一下  没有读到关于是否可以视频的描述

视频???
Reply View the author
beautycell
deepin
2020-08-16 17:52
#5
我浏览一下  没有读到关于是否可以视频的描述
Reply View the author
beautycell
deepin
2020-08-16 17:53
#6

钉钉可否能够视频连线
Reply View the author
一一网络
deepin
2020-08-16 18:18
#7

这个wine调用摄像头得看看深度怎么解决的,deepin已经搞定了看公布不公布一下呀 ?问下@jingle
Reply View the author
jianguo922
deepin
2020-08-16 18:30
#8
可惜下载UOS不能deepin-wine5
Reply View the author
一一网络
deepin
2020-08-17 00:15
#9
https://bbs.deepin.org/post/199566
可惜下载UOS不能deepin-wine5

自己下载wine搞一下吧
Reply View the author
linxyz
deepin
2020-08-17 00:48
#10
把配置好的wine包上来。wine net46几乎没成功过
Reply View the author
一一网络
deepin
2020-08-17 00:54
#11
https://bbs.deepin.org/post/199566
把配置好的wine包上来。wine net46几乎没成功过

https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/Debian_10/下载64位或者32位的deb包
Reply View the author
一一网络
deepin
2020-08-17 00:55
#12
https://bbs.deepin.org/user/48640 能不能告知一下wine怎么解决摄像头调用问题的?就差这个了,很着急,非常感谢
Reply View the author
安洛
deepin
2020-08-17 02:30
#13
星火商店已经有基于deepin-wine5的钉钉,可以解决wine钉钉退出后依然有进程遗留的问题。
Reply View the author
早起的虫儿有鸟吃
deepin
2020-08-17 07:36
#14
https://bbs.deepin.org/post/199566
星火商店已经有基于deepin-wine5的钉钉,可以解决wine钉钉退出后依然有进程遗留的问题。 ...

可以看会议直播吗?
Reply View the author
linxyz
deepin
2020-08-17 18:31
#15
https://bbs.deepin.org/post/199566
https://download.opensuse.org/repositories/Emulators:/Wine:/Debian/Debian_10/下载64位或者32位的deb ...

我是说你配置好的容器,打包上来
Reply View the author
deepin爱好者
deepin
2020-08-17 20:06
#16
帖子非常好,有时间搞一下玩玩
Reply View the author
安洛
deepin
2020-08-18 02:49
#17
https://bbs.deepin.org/post/199566
可以看会议直播吗?

看直播可以,不能调用摄像头。
Reply View the author
jingle
deepin
2020-08-18 05:47
#18
https://bbs.deepin.org/post/199566
@jingle 能不能告知一下wine怎么解决摄像头调用问题的?就差这个了,很着急,非常感谢 ...

这个估计有点复杂
Reply View the author
一一网络
deepin
2020-08-20 06:46
#19
本帖最后由 proyy_com 于 2020-8-19 23:17 编辑
https://bbs.deepin.org/post/199566
这个估计有点复杂

关于deepin-wine不能调用摄像头、视频通话结合log日志目前能找到的一丢丢的相关资料及判断log就是
跟qcap.dll模块强相关或者是跟QT相关,日志中提到的关于KSP_Get () Not adding a pin with PIN_CATEGORY_PREVIEW,网上搜索了一下,感觉情况应该是一致的,仅有一个网友说:KSP_Get只能返回PIN_CATEGORY_PREVIEW,而QQ需要PIN_CATEGORY_CAPTURE。
他个邮件说改c文件,不过感觉wine版本不对应,其的dlls/qcap/capturegraph.c文件也有变化呀,大佬们帮帮忙吧,是修改qcap这个东东吗,这年头工作离不开微信跟钉钉了,工作需求deepin都基本满足了,但是目前就差视频、摄像头调用了。


下面是调用摄像头时的error log
06d0:fixme:qcap:video_control_GetFrameRateList filter 0xa851f00, pin 0xa852068, index 0, dimensions (640x480), list size 0x922f64c, frame rate: 0x922f638: stub.
06d0:fixme:qcap:KSP_Get () Not adding a pin with PIN_CATEGORY_PREVIEW
libv4l2: error setting pixformat: 设备或资源忙
06d0:err:qcap:set_caps Failed to set pixel format: 设备或资源忙.
06d0:err:qcap:v4l_device_create Failed to set pixel format: 设备或资源忙




下面是网友的记录:hack QQ使用ICaptureGraphBuilder方法取代ICaptureGraphBuilder2?原list:https://www.freelists.org/post/wine-zh/QQ-Webcam-tests-in-wine
Hi,  测试了一下wine 1.7.33对QQ6.7和QQIntl 1.6摄像头的兼容性。  首先对wine-git/dlls/qcap/capturegraph.c进行修改:  in function pin_matches: Line 422: if (FAILED(hr) || !IsEqualIID(&category, cat)) => if (FAILED(hr) || (!IsEqualIID(&category, cat) && !IsEqualIID(&IN_CATEGORY_CAPTURE, cat)))  修改的原因是KSP_Get只能返回PIN_CATEGORY_PREVIEW,而QQ需要PIN_CATEGORY_CAPTURE。  编译之后就可以正确加载摄像头了。我尝试用IOS QQ与WINE QQ进行视频通信,一些结果如下:  QQIntl 1.6:无法与IOS QQ进行正常视频通信。设置中的摄像头可以正常显示,但是关闭设置窗口会发生死锁,死在VfwCapture_Pause函数里面,解决方法是修改vfwcapture.c,将VfwCapture_Pause中return的qcap_driver_pause改为qcap_driver_destroy,治标不治本。  QQ6.7:IOS QQ可以看到Webcam的图像,但是WINE QQ端死锁,没找到原因。大概是个OLE Release超时失败,不太懂。  希望开发者能从测试结果中得到启发。  以上。  Best Regards,  Dec 25, 2014.


capturegraph.c的pin_matches函数
//////////////////////////////
static BOOL pin_matches(IPin *pin, PIN_DIRECTION dir, const GUID *category,
        const GUID *majortype, BOOL unconnected)
{
    PIN_DIRECTION candidate_dir;
    HRESULT hr;
    IPin *peer;

    if (FAILED(hr = IPin_QueryDirection(pin, &candidate_dir)))
        ERR("Failed to query direction, hr %#x.\n", hr);

    if (dir != candidate_dir)
        return FALSE;

    if (unconnected && IPin_ConnectedTo(pin, &peer) == S_OK && peer)
    {
        IPin_Release(peer);
        return FALSE;
    }

    if (category)
    {
        IKsPropertySet *set;
        GUID property;
        DWORD size;

        if (FAILED(IPin_QueryInterface(pin, &IID_IKsPropertySet, (void **)&set)))
            return FALSE;

        hr = IKsPropertySet_Get(set, &ROPSETID_Pin, AMPROPERTY_PIN_CATEGORY,
                NULL, 0, &property, sizeof(property), &size);
        IKsPropertySet_Release(set);
        if (FAILED(hr) || !IsEqualGUID(&property, category))
            return FALSE;
    }

    if (majortype && !pin_has_majortype(pin, majortype))
        return FALSE;

    return TRUE;
}



#include
#include
QProcess *RosCloseRosmaster = new QProcess;
RosCloseRosmaster->start("killall -9 motion");
cvReleaseImage(&pFrame);
cvReleaseCapture(&pCapture);



Reply View the author
一一网络
deepin
2020-08-20 06:54
#20
https://bbs.deepin.org/post/199566
这个估计有点复杂

不怕复杂,要是怕折腾就不用deepin了
Reply View the author
1 / 2
To page