适用于ARM64的腾讯通2015 | RTX2015
@lax,发文件有什么现象?我没有服务器没法帮你测试。
@lax,可以在腾讯通里直接点击浏览选择文件吗?
@lax,是打开了文件选择框但是你找不到要上传的文件吗?去找Z盘的home/用户名/文档文件夹。 如果是在数据盘,就在Z:/media/用户名/磁盘名里面。
home/用户名/文档
Z:/media/用户名/磁盘名
@老虎会游泳,@haofire, 一加8Pro
@lax,发文件有什么现象?我没有服务器没法帮你测试。
@lax,可以在腾讯通里直接点击浏览选择文件吗?
@lax,是打开了文件选择框但是你找不到要上传的文件吗?去找Z盘的
home/用户名/文档文件夹。如果是在数据盘,就在
Z:/media/用户名/磁盘名里面。打开聊天窗口把文件拖动进去,只显示文件的路径
用窗口上的添加文件按钮没反应,然后别人发给我的文件会直接显示错误
@老虎会游泳,@haofire,
一加8Pro
根本原因
1. Wine 将 Z: 盘映射到 Linux 根目录 /,腾讯通调用文件对话框时尝试读取磁盘设备卷标,被系统权限拒绝,导致文件传输通路中断。
2. shell32.dll 中的文件打开对话框 COM 组件未正确注册,导致发送/接收文件时无法弹出文件选择窗口。
解决步骤
第一步:修复 Z: 盘映射
```bash
cd ~/.deepinwine/Deepin-RTX2015/dosdevices
rm z:
ln -s /home/$USER z:
```
第二步:注册 shell32 的 COM 组件
```bash
export WINEPREFIX="$HOME/.deepinwine/Deepin-RTX2015"
export WINEDLLPATH=/opt/deepin-wine6-stable/lib
export WINEPREDLL=/data/opt/apps/deepin.com.qq.rtx2015/files/dlls
export ATTACH_FILE_DIALOG=1
/opt/deepin-box86/box86 /opt/deepin-wine6-stable/bin/wine regsvr32 /i shell32.dll
```
看到 succeeded 提示即为注册成功。
第三步:重启腾讯通,修改接收目录为纯英文路径