PC 桌面软件需要实现的一个功能。 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Zorro825
V2EX    程序员

PC 桌面软件需要实现的一个功能。

  Zorro825 2023 年 12 月 28 日 3910 次点击
这是一个创建于 824 天前的主题,其中的信息可能已经有所发展或是发生改变。

比如我开发个 PC 软件,windows 端的。需要调用电脑里面已经安装的一个软件,打开软件,在软件登录框自动输入账号密码。

实现是肯定可以实现的,因为我看到别人这样弄了, 请问用什么技术?

我做 WEB 开发的,所以不太懂。

21 条回复    2023-12-29 09:38:22 +08:00
xtreme1
    1
xtreme1  
   2023 年 12 月 28 日
pywinauto
fdghjk
    2
fdghjk  
   2023 年 12 月 28 日
上号器就是这个技术
rming
    3
rming  
   2023 年 12 月 28 日
模拟鼠标键盘输入
SWALLOWW
    4
SWALLOWW  
   2023 年 12 月 28 日
获取目标句柄发消息
zhuzixian
    5
zhuzixian  
   2023 年 12 月 28 日
nullp
    6
nullp  
   2023 年 12 月 28 日
AU3
Daniate
    7
Daniate  
   2023 年 12 月 28 日 via iPhone
可以试试微软的 power automate
opengps
    8
opengps  
   2023 年 12 月 28 日
不用太多技术,先看下有没有快捷键能完成这一系列操作。剩下的就是模拟键盘
StubbornHuang
    9
StubbornHuang  
   2023 年 12 月 28 日
获取窗口句柄 获取控件句柄 模拟控件事件
clorischan
    10
clorischan  
   2023 年 12 月 28 日
那得看你打开登录的目标软件有没有做安全措施了.
没有的话, 找到输入控件句柄发消息就行.
有的话根据其强度, 可能需要写驱动+代码签名
cuicuiv5
    11
cuicuiv5  
   2023 年 12 月 28 日
按键精灵
zcjwxf
    12
zcjwxf  
   2023 年 12 月 28 日
技术实现就不说了,挺简单的,唯一注意的是你用了那些自动化方案后这台电脑不能玩网络游戏咯,会被封号的,
morgan1freeman
    13
morgan1freeman  
   2023 年 12 月 28 日
针对任意 exe 程序的话,驱动层面上 hook 对应的 win32 的 execute 函数,如果传入的 exe 文件的 md5 匹配上就直接 hook 住,不让启动,这个东西比较复杂,搞 win32 搞的多的话,github 上找一个 驱动 hook 的例子,应该就能实现
morgan1freeman
    14
morgan1freeman  
   2023 年 12 月 28 日
@clorischan 目标程序已经启动的话,针对目标程序句柄发消息,能干嘛,hide 窗口么,这种是不是 hook win32 的 execute 函数比较合适
morgan1freeman
    15
morgan1freeman  
   2023 年 12 月 28 日
用到的技术应该是 ssdt hook ,底层貌似是这两个函数 ,NtCreateProcess or ZwCreateProcess ,上内核驱动 patch 掉 这两个函数,应该就可以了
liuhuihao
    16
liuhuihao  
   2023 年 12 月 28 日
简单的来说 用按键精灵写个脚本就行了
morgan1freeman
    17
morgan1freeman  
   2023 年 12 月 28 日
https://github.com/angelkillah/zer0m0n/blob/02b81321108a8a8f245984b71dbdb37171ef5f82/src/driver/hooking.c#L23 这里有代码可以抄,它 hook 了 NtCreateProcess or ZwCreateProcess
chutianyao
    18
chutianyao  
   2023 年 12 月 28 日
autohotkey
morgan1freeman
    19
morgan1freeman  
   2023 年 12 月 28 日
@clorischan 不好意思 我看错题意了,它这个需求是打开一个 exe 然后填入密码账号,这个确实 sendMessage 就行了
Zorro825
    20
Zorro825  
OP
   2023 年 12 月 28 日
@morgan1freeman 谢谢大佬
layxy
    21
layxy  
   2023 年 12 月 29 日
ahk
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     946 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 27ms UTC 21:32 PVG 05:32 LAX 14:32 JFK 17:32
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86