1
chinvo 2018 年 10 月 23 日 via iPhone
既然有密码框说明设计上就是要输入密码的,你可以研究下这个库的源码看看能不能跳过密码直接调用其他组件
|
3
ReVanTis 2018 年 10 月 23 日
按你现在的思路,模拟键盘的话,
https://docs.microsoft.com/en-us/dotnet/api/system.windows.forms.sendkeys.send?view=netframework-4.7.2 以前跑 selenium 的时候网页的弹窗我似乎用过这个。。。 |
4
geelaw 2018 年 10 月 23 日
最好用那个库本身的东西解决,如果不行的话就用 UI Automation
|
5
PulpFunction 2018 年 10 月 23 日 via Android
严重密码那块改一下?或者启用弹框那里注视
|
6
chinvo 2018 年 10 月 23 日 via iPhone
@AmoxiDu #2 用 DotPeek / ReSharper / Rider 跟一下( Go To Declaration )
|
7
ysc3839 2018 年 10 月 23 日
先试试用 PostMessage 发送键盘消息。不行的话再试试 SendInput。
可以的话用 Spy++ 查看一下窗口,截图发上来。 |
8
aldenchang 2018 年 10 月 23 日 via iPhone
没太明白,你获取了密码窗体句柄把密码发给了窗体后,如果你无法修改动态库代码,也还是无法处理啊。你是想跳过密码输入的步骤?
|
9
mingl0280 2018 年 10 月 23 日
办法多了去了,post/sendmessage;keybd_event;SendInput 都可以,找到窗口句柄就好办
|
10
cjw1115 2018 年 10 月 23 日
UI automation 那一套,结合 Windows 消息还有 inspect 可以解决问题
|
11
AmoxiDu OP 搞定了,用的是 keybd_event,感谢楼上各位老哥的回答!
https://paste.ubuntu.com/p/bt9cHqvqRJ/ |
12
sarlanori 2018 年 10 月 23 日 via Android
都能拿到 handle 了,有很多方式都可以达到目的,比如 SetText,SendMessage 等
|