deepin-wine icon indicating copy to clipboard operation
deepin-wine copied to clipboard

安装微信后运行desktop会重置容器,导致修改的dpi失效

Open thep0y opened this issue 3 years ago • 8 comments

修改 dpi 为 192:

env WINEPREFIX="$HOME/.deepinwine/Deepin-WeChat" /opt/deepin-wine6-stable/bin/wine winecfg

然后运行微信,会重新生成微信容器,导致上面修改的 dpi 失效。 但不止 dpi 失效,是所有注册表文件都重置了。

/opt/apps/com.qq.weixin.deepin/files/run.sh

下面的命令才能正常使用自定义过的容器:

env WINEPREFIX="$HOME/.deepinwine/Deepin-WeChat" /opt/deepin-wine6-stable/bin/wine $HOME/.deepinwine/Deepin-WeChat/drive_c/Program\ Files/Tencent/WeChat/WeChat.exe

没有仔细看run.shrun_v4.sh里的代码,但我觉得可能有些问题。

thep0y avatar Sep 18 '21 01:09 thep0y

我也是 每次启动微信都会更新生成新的容器,导致配置的字体无法使用

qq524967747 avatar Oct 18 '21 02:10 qq524967747

每次启动微信都会重新生成 ~/.deepinwine/wechat file文件夹,有解决办法吗

ghost avatar Oct 18 '21 04:10 ghost

每次启动微信都放大生成~/.deepinwine/wechat文件文件夹,有解决办法吗

用体主的方法是可行的

qq524967747 avatar Oct 18 '21 05:10 qq524967747

每次启动微信都会重新生成 ~/.deepinwine/wechat file文件夹,有解决办法吗

解决办法就是我说的,复制一个微信的desktop文件放在$HOME/.local/applications中,将Exec命令修改为/opt/deepin-wine6-stable/bin/wine $HOME/.deepinwine/Deepin-WeChat/drive_c/Program\ Files/Tencent/WeChat/WeChat.exe即可。 有些发行版可能无法识别desktop中的$HOME,需要修改为/home/用户名

deepin 本身的 wine 是放在 $HOME/.deepinwine目录中的,使用此库的 deb 却放在了对用户只读的/opt目录中。

你完全可以不用使用此库的 deb ,只需要将 deepin-wine6-stable 放在 $HOME/.deepinwine 中,以后所有的 exe 程序都用类似上面的命令启动。

thep0y avatar Oct 18 '21 13:10 thep0y

如果是wechat容器,解决办法: 在/opt/deepinwine/tools/run_v4.sh中找到CallWeChat函数,将删除注册表和配置的代码注释掉即可,如下:

CallWeChat()
{
    debug_log "Disable auto update"
    # _DeleteRegistry "HKCU\\Software\\Tencent\\WeChat" "UpdateFailCnt"
    # _DeleteRegistry "HKCU\\Software\\Tencent\\WeChat" "NeedUpdateType"
    # rm "${WINEPREFIX}/drive_c/users/${USER}/Application Data/Tencent/WeChat/All Users/config/configEx.ini"

    export DISABLE_RENDER_CLIPBOARD=1
    export ATTACH_FILE_DIALOG=1
    CallProcess "$@"
}

jmp0x7c00 avatar Oct 25 '21 04:10 jmp0x7c00

如果是wechat容器,解决办法: 在/opt/deepinwine/tools/run_v4.sh中找到CallWeChat函数,将删除注册表和配置的代码注释掉即可,如下:

CallWeChat()
{
    debug_log "Disable auto update"
    # _DeleteRegistry "HKCU\\Software\\Tencent\\WeChat" "UpdateFailCnt"
    # _DeleteRegistry "HKCU\\Software\\Tencent\\WeChat" "NeedUpdateType"
    # rm "${WINEPREFIX}/drive_c/users/${USER}/Application Data/Tencent/WeChat/All Users/config/configEx.ini"

    export DISABLE_RENDER_CLIPBOARD=1
    export ATTACH_FILE_DIALOG=1
    CallProcess "$@"
}

这个方法也不行,不知道是不是新版本改了什么

Hoking007 avatar May 26 '22 03:05 Hoking007

有效的

WalkerGH avatar Jul 21 '22 08:07 WalkerGH

case $BOTTLENAME in
    "Deepin-Intelligent" | "Deepin-QQ" | "Deepin-TIM" | "Deepin-WeChat" | "Deepin-WXWork" | "Deepin-Dding")
        #rm -rf "$WINEPREFIX"
        #DeployApp
        return
        ;;

尝试不要重新Deploy,目测可行,就是不知道还有什么问题。我用的最新这个版本的包,已经找不到注册表的重新初始化信息了,所以在这里注释了两句。

sakylian avatar Sep 15 '22 00:09 sakylian