V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Zorro825
V2EX  ›  程序员

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

  •  
  •   Zorro825 · 316 天前 · 2991 次点击
    这是一个创建于 316 天前的主题,其中的信息可能已经有所发展或是发生改变。

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

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

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

    21 条回复    2023-12-29 09:38:22 +08:00
    xtreme1
        1
    xtreme1  
       316 天前
    pywinauto
    fdghjk
        2
    fdghjk  
       316 天前
    上号器就是这个技术
    rming
        3
    rming  
       316 天前
    模拟鼠标键盘输入
    SWALLOWW
        4
    SWALLOWW  
       316 天前
    获取目标句柄发消息
    zhuzixian
        5
    zhuzixian  
       316 天前
    nullp
        6
    nullp  
       316 天前
    AU3
    Daniate
        7
    Daniate  
       316 天前 via iPhone
    可以试试微软的 power automate
    opengps
        8
    opengps  
       316 天前
    不用太多技术,先看下有没有快捷键能完成这一系列操作。剩下的就是模拟键盘
    StubbornHuang
        9
    StubbornHuang  
       316 天前
    获取窗口句柄 获取控件句柄 模拟控件事件
    clorischan
        10
    clorischan  
       316 天前
    那得看你打开登录的目标软件有没有做安全措施了.
    没有的话, 找到输入控件句柄发消息就行.
    有的话根据其强度, 可能需要写驱动+代码签名
    cuicuiv5
        11
    cuicuiv5  
       316 天前
    按键精灵
    zcjwxf
        12
    zcjwxf  
       316 天前
    技术实现就不说了,挺简单的,唯一注意的是你用了那些自动化方案后这台电脑不能玩网络游戏咯,会被封号的,
    morgan1freeman
        13
    morgan1freeman  
       316 天前
    针对任意 exe 程序的话,驱动层面上 hook 对应的 win32 的 execute 函数,如果传入的 exe 文件的 md5 匹配上就直接 hook 住,不让启动,这个东西比较复杂,搞 win32 搞的多的话,github 上找一个 驱动 hook 的例子,应该就能实现
    morgan1freeman
        14
    morgan1freeman  
       316 天前
    @clorischan 目标程序已经启动的话,针对目标程序句柄发消息,能干嘛,hide 窗口么😅,这种是不是 hook win32 的 execute 函数比较合适
    morgan1freeman
        15
    morgan1freeman  
       316 天前
    用到的技术应该是 ssdt hook ,底层貌似是这两个函数 ,NtCreateProcess or ZwCreateProcess ,上内核驱动 patch 掉 这两个函数,应该就可以了
    liuhuihao
        16
    liuhuihao  
       316 天前
    简单的来说 用按键精灵写个脚本就行了
    morgan1freeman
        17
    morgan1freeman  
       316 天前
    https://github.com/angelkillah/zer0m0n/blob/02b81321108a8a8f245984b71dbdb37171ef5f82/src/driver/hooking.c#L23 这里有代码可以抄,它 hook 了 NtCreateProcess or ZwCreateProcess
    chutianyao
        18
    chutianyao  
       316 天前
    autohotkey
    morgan1freeman
        19
    morgan1freeman  
       316 天前
    @clorischan 不好意思 我看错题意了,它这个需求是打开一个 exe 然后填入密码账号,这个确实 sendMessage 就行了
    Zorro825
        20
    Zorro825  
    OP
       316 天前
    @morgan1freeman 谢谢大佬
    layxy
        21
    layxy  
       315 天前
    ahk
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2723 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 12:26 · PVG 20:26 · LAX 04:26 · JFK 07:26
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.