Deepin Linux 下安装千牛工作台

一、背景介绍
千牛工作台是一款淘宝卖家客户端程序,有Windows及其它平台,没有Linux客户端。我在淘宝上作Linux远程技术服务,而我使用的主力系统是Deepin Linux,于是有了电脑上安装千牛工作台的需要。Deepin 仓库里有:com.taobao.work.deepin 9.59.05deepin,但不能使用。

二、技术要点概览
我是利用 deepn 25.2.2/20.9 Linux 仓库里的“统信Windows应用兼容引擎”安装最新Windows版的"千牛工作台",然后导入单独的注册表修复补丁完成。后面还讲了解决方法的发现过程。最后是给“统信Windows应用兼容引擎”软件的一点建议。

三、具体步骤
下面的步骤是以 Deepin 25.2.2 Linux 为例,同样的步骤在 Deepin 20.9 也测试通过。

1、下载安装“统信Windows应用兼容引擎”
可以在“应用商店”搜索“统信Windows应用兼容引擎”安装,也可以执行下列命令在终端安装:

sudo apt update
sudo apt install deepin-wine-builder

2、下载安装“Windows版千牛工作台”
官方下载网址:https://work.taobao.com/download.html,下载其中的 Windows 版本,当前下载下来的文件名是:AliworkbenchQNDownload_(1.0.2.1).exe,大小只有1.3MB,应该只是主程序的下载器。

双击桌面的“统信Windows应用兼容引擎”图标打开程序,选择左侧菜单栏的“全部应用”,在顶部中央搜索框中输入“千牛”回车搜索,会出来“千牛工作台”项目,点击右侧的安装。点击中间下部的“+”,选择前面下载的AliworkbenchQNDownload_(1.0.2.1).exe。点击右下角的“安装”。这一过程中会下载真正的主程序,如当前下载下来的是:qianniu_(9.97.74N)_NK_64.exe,并打开下载文件夹展示下载的文件。关闭打开的下载文件夹,继续在安装窗口上选择“同意许可协议”,并点击立即安装。安装完成后,关闭安装窗口。进行必须的下一步设置,否则,在千牛与来客对话时,出现的所有文字对话内容一律会显示为“暂不支持的消息类型”,导致根本无法正常使用。

在“统信Windows应用兼容引擎”左侧点击“我的应用”,确保千牛没有在运行,主窗口的“千牛工作台”右侧显示的是“运行”。点击右边的三个小点,选择“快捷工具”->“导入注册表”。把包含下面文字内容的注册表补丁文件(比如保存为文件名:qianniu-dlloverrides-fix.reg)导入进去,会自动添加17项的“原生优于内建”的dll项目。这期间可能会有黑色的终端窗口闪现几次,稍等片刻等导入完成后,点击右上角的“x”关闭“统信Windows应用兼容引擎”。
注册表补丁文件 qianniu-dlloverrides-fix.reg 内容:

REGEDIT4

; ============================================================
; 千牛工作台「暂不支持的消息类型」修复补丁
; ------------------------------------------------------------
; 问题:统信 Windows 应用兼容引擎(deepin-wine-builder)新建的 bottle
;       没有继承 VC++ 运行库的原生优先声明,导致千牛只能使用 Wine 自研的
;       msvcp140 / vcruntime140 等内置实现,消息文本在 C++ 侧序列化时
;       静默失败,界面统一显示「暂不支持的消息类型」(图片、表情正常)。
;
; 作用:把 17 个运行库标记为 native,builtin(先找原生,找不到退回内置),
;       使千牛加载自己程序目录里自带的那套微软原生运行库。
;
; 适用:千牛 9.97.x + deepin-wine10 + 统信兼容引擎 bottle
; 日期:2026-11-02   已验证有效
;
; 用法:先完全退出千牛,再导入本文件,然后重新启动千牛。
;       导入后不需要重启电脑。
; ============================================================

[HKEY_CURRENT_USER\Software\Wine\DllOverrides]

; --- 微软 VC++ 2015-2022 运行库 ---
"msvcp140"="native,builtin"
"msvcp140_1"="native,builtin"
"msvcp140_2"="native,builtin"
"vcruntime140"="native,builtin"
"vcruntime140_1"="native,builtin"
"concrt140"="native,builtin"
"vcomp140"="native,builtin"
"atl140"="native,builtin"
"msvcr140"="native,builtin"

; --- Universal CRT 的 API Set 转发层 ---
"api-ms-win-crt-conio-l1-1-0"="native,builtin"
"api-ms-win-crt-heap-l1-1-0"="native,builtin"
"api-ms-win-crt-locale-l1-1-0"="native,builtin"
"api-ms-win-crt-math-l1-1-0"="native,builtin"
"api-ms-win-crt-private-l1-1-0"="native,builtin"
"api-ms-win-crt-runtime-l1-1-0"="native,builtin"
"api-ms-win-crt-stdio-l1-1-0"="native,builtin"
"api-ms-win-crt-time-l1-1-0"="native,builtin"

; 说明:vcomp140 / atl140 / msvcr140 千牛目录里不一定有,
;       native,builtin 会自动退回内置版本,不会报错。

3、运行“千牛工作台”
双击桌面上的蓝色白色牛头图标即可运行。启动期间也会有黑色的终端闪现几次。然后就出现登录界面,叉掉中间出现的“新增入口”小框,就可以用密码或手机端扫码登录使用了。

4、卸载“千牛工作台”
在“统信Windows应用兼容引擎”中左侧菜单栏点击“我的应用”,点击出现的“千牛工作台”右侧的三个小点,在弹出的菜单中选择卸载就行。位于 ~/.local/share/deepin-wine-bottles/bottles 里面的容器文件夹会被整体删除。

四、难点的解决
这次安装的难点是那个补丁文件的获取。

实际上,之前我就发现仓库里的“千牛工作台”不能正常使用,我在偶然的尝试中,在已经安装好了的“央视影音”客户端(com.cctv.deepin)的容器里安装“千牛工作台”成功。使用的关键命令是:“env WINEPREFIX="$HOME/.deepinwine/com.cctv.deepin" deepin-wine10-stable uninstaller”。但是后来“千牛工作台”升级后,扫码登录不能使用,窗口页面不加载。这样,一段时间就停止了在 Deepin Linux 上使用。前几天,我用 WorkBuddy 诊断,从容器原来的 deepin-wine8-stable 换成 deepin-wine10-stable 就正常了。

然后,我尝试用“统信Windows应用兼容引擎”安装千牛,结果就是前面说的与客户对话文字消息显示为“暂不支持的消息类型”。我用 WorkBuddy 让它比较基于“央视影音”客户端容器和“统信Windows应用兼容引擎”安装的实例的区别,并修复兼容引擎安装实例。WorkBuddy 从字体设置、dll版本、数据目录、启动参数、DirectX 等各方面调试都不成功,中途甚至劝我说既然基于“央视影音”客户端容器可以正常工作就不要折腾了。我让它继续,最后终于发现是统信 bottle 的 DllOverrides 只有 1 条,“央视影音”容器有 18 条。这18条是让Wine使用Windows原生dll优先于Wine内建dll。然后就给出了上面的 注册表补丁文件 qianniu-dlloverrides-fix.reg 。前后花了差不多3个小时。

如果你在使用“统信Windows应用兼容引擎”的过程中有问题,不妨试试上面的补丁。

五、存在的问题
我发现了2个不影响正常的小问题。
一是有时窗口显示不出来内容,点击窗口顶部的刷新图标就行。二是悬浮小窗口四周有黑边,这可以忽略,也可以通过Deepin系统方面的设置解决。这里就不详细展开了。

六、给“统信Windows应用兼容引擎”的一点建议
如果程序需要进一步设置的话,可以在兼容引擎程序的页面上补充相应的设置说明和相应的补丁文件。

exawind 安装要点

前段时间帮人安装了 exawind( https://github.com/Exawind/exawind-driver ),一套风能模拟的程序,非常的难搞。分别在在一台 virt-manager 中的 Ubuntu 20.04、NVIDIA P106-100 和物理机 Ubuntu 24.04、NVIDIA RTX 4060Ti 成功安装 exawind、nalu-wind、amr-wind套件,3个都有 cuda 支持,后2个有 openfast 支持。事先声明,我对这套专业软件完全不懂,只是应人要求进行了一番折腾。下面总结一下安装过程中的要点备忘。

Continue reading "exawind 安装要点"

超强免费的Linux文件恢复工具R-Linux简介

(首发地址:学习日记 https://www.learndiary.com/2024/12/r-linux/)

一、Linux 误删除文件恢复的要点

  1. 删除文件后到恢复结束前,所在分区尽量避免进一步写操作;
  2. 选择恰当的恢复工具。如: ext4magic、photorec。这里介绍一款恢复效果更好的 R-Linux 6.3 build 191253。

视频讲解:【超强免费的Linux文件恢复工具R-Linux简介】https://www.bilibili.com/video/BV1xB6VYdEkE/

Continue reading "超强免费的Linux文件恢复工具R-Linux简介"

Linux下畅玩原神5.2的三个要点

(首发地址:学习日记 https://www.learndiary.com/2024/12/yuanshen52/)
朋友们大家好,我是学习日记博客的littlebat,同时也是淘宝网学习日记小店的learndiary,专注于Linux和开源技术的服务。今天,我将与大家分享一下在Linux系统中玩原神5.2版本时需要注意的几个要点。这个分享源于我在Deepin论坛上的帖子《Deepin23踩坑记》,其中提到了在Deepin23上运行原神的经历。之后有朋友反馈说他们在Linux下无法启动原神,我也在更新到5.2版本后遇到了网络错误码4201的问题。经过查找资料与研究,我发现通过一些特定的设置,还是可以在Linux下顺利运行原神5.2的。视频讲解:【Linux下畅玩原神5.2的三个要点】 https://www.bilibili.com/video/BV1WdqdYeEks/

Continue reading "Linux下畅玩原神5.2的三个要点"

Deepin 23 踩坑记

(首发地址:学习日记 https://www.learndiary.com/2024/12/deepin23-questions/)
Deepin 23 是由统信软件技术有限公司牵头开发一款开源 Linux 桌面操作系统(参考链接1),从2022年发布预览版(参考链接2)到2024年8月发布正式版(参考链接3),历经了三年的开发。我是从 2021年开始使用 Deepin 20 版的(参考链接4),主要是免了自己折腾一些 Windows 下用 Wine 安装的程序。目前家用和工作的主力系统就是 Deepin。

前段时间 Deepin 23 正式版发布后,本着还能用就不升级的懒人原则,两台 Deepin 电脑都没从20.9升级到23。一天,我在浏览 Deepin 论坛的时候,有点大吃一惊的感觉,不少贴子都有对 Deepin 23 大批特批,我在想,Deepin 23 真的这么不堪么?于是,决定把家里那台20.9升级到23试试。视频讲解:【Deepin 23 踩坑记】 https://www.bilibili.com/video/BV1k5qHYYEEe/

Continue reading "Deepin 23 踩坑记"

Linux下误删文件后的紧急应对策略:避免写操作与及时关机

(首发地址:学习日记 https://www.learndiary.com/2024/10/rm-not-write/)
(2024.12.30更新:推荐使用 R-Linux 恢复 EXT2~4 分区误删除文件,参见:https://www.learndiary.com/2024/12/r-linux/ )
朋友们,大家好,我是学习日记博客的littlebat,同时也是淘宝网上专门从事Linux服务的learndiary。今天我将为大家分享Linux环境下误删除文件后应首要注意的问题,并结合我亲身经历的三个案例,为大家讲解为何误删数据后需避免所在分区的写操作以及如何避免。视频讲解:【Linux下误删文件后的紧急应对策略:避免写操作与及时关机】 https://www.bilibili.com/video/BV15GmnYGEYZ/

朋友们大家好,我是学习日记博客的littlebat,同时也是淘宝网上专门从事Linux服务的learndiary。今天我将为大家分享Linux环境下误删除文件后应首要注意的问题,并结合我亲身经历的三个案例,为大家讲解为何误删数据后需避免所在分区的写操作以及如何避免。视频讲解:【Linux下误删文件后的紧急应对策略:避免写操作与及时关机】 https://www.bilibili.com/video/BV15GmnYGEYZ/

Continue reading "Linux下误删文件后的紧急应对策略:避免写操作与及时关机"