云原神寄了
RT,新版本判断逻辑如下
标题为 云·原神,类名为 Qt5152QWindowIcon,可见,取不到父窗口
不过鉴于我的rust水平实在有限(刚刚入门),这玩意提不了pr了……
啊,已知问题。之前不指定hwnd能用bitblt截到屏的。指定了(主要是为了获取alpha通道)之后是寄的。。
BTW,我rust也很烂,甚至不会用copy trait,,所以代码里各种硬clone(
用aardio写了个仿云原神窗口情况的程序用于测试,源码也附上了,用于测试
发现上面的程序做的还是不是太对,不过已经找到了遍历窗口的解决方案
https://github.com/microsoft/windows-rs/blob/0.53.0/crates/samples/windows/enum_windows/src/main.rs
这玩意遍历出来,云原神共3个窗口,其中一个和另外两个不一样的就是了。
不过据better genshin impart的开发者说bitbit现在取不到云原神的窗口了……
bitblt指定hwnd截屏以获取alpha通道是在b7ec40引入的。在此之前最近的release是nightly-40 。我先切下系统试试。
我这里是能用的,bitblt可以通过不指定hwnd截到屏,但是没有alpha通道。
我这里的云原神无法按键,也无法获取……
用的啥版本
yap本地构建的最新版本啊 (不过是用gnu target构建的)
bitblt指定hwnd截屏以获取alpha通道是在b7ec40引入的。在此之前最近的release是nightly-40 。我先切下系统试试。
我用的是nightly-40,还没加hwnd截屏
我这里的云原神无法按键,也无法获取……
更正,可以按键,但是云原神无反应
yap用的enigo库模拟键鼠。enigo是用send input而不是post/send message到hwnd的,如果不能用我也不知道为啥
send input 可以模拟云原神的键鼠,但是 post/send message 我不确定,未测试。
yap用的enigo库模拟键鼠
从昨晚开始就已经在看你用的enigo的文档和git了(大悲