最近注意到在升级微信客户端后,需要替换的窗口id有变化。在我的电脑上,下文中的‘13’需要修改为'17’,其余仍然有效。经过几次升级,阴影窗口的id尾号在‘13’和‘17’之间来回切换。不过如果不升级微信版本,就可以不用管。
===========================================================================================================================
终端下运行
代码: 全选
xdotool windowunmap `wmctrl -l -G -p -x |grep wechat.exe.Wine |awk '{print $1}' |sed 's/^0x0/0x/;s/0b/13/'`
原理:1. 微信窗口边框的阴影,其实是区别于微信主窗口的另一个窗口对象;2. 使用xdotool取消对阴影窗口的绘制,阴影即消失;3.需要获知阴影窗口的id。
注意:上面代码只是示例,其中的0x0之类的需要替换。
具体替换方法:
1. 准备工具 wmctrl,xdotool,xwininfo
2. 终端运行
代码: 全选
wmctrl -l -G -p -x
3. 终端运行
代码: 全选
xwininfo
4. 对比winid1和winid2,会发现两者有固定的关联,并且经过测试这种关联是不变的。所以,以上替换的思路就是先获取微信主窗口的id,然后生成阴影窗口的id。