V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
yeyu1989
V2EX  ›  Python

系统锁定的情况下, Python 的 win32 还能自动调用鼠标键盘操作窗口吗?

  •  
  •   yeyu1989 · 2019-07-08 16:00:49 +08:00 · 3009 次点击
    这是一个创建于 2002 天前的主题,其中的信息可能已经有所发展或是发生改变。
    场景是这样的:
    希望系统在收到邮件时触发其他窗口的操作:需要在其他窗口输入键盘字母、鼠标点击确认。
    但是该问题在系统锁定后就无法触发 win32gui.SetForegroundWindow(),不知道该怎么解决?
    第 1 条附言  ·  2019-07-09 10:16:20 +08:00
    需求是这样的:
    监控邮件,当收到特定邮件时,打电话将邮件主题通知到指定联系人,最好有声音通知(不然接电话什么也听不到)。

    目前手里的工具有:
    邮件客户端:Outlook,利用 win32 接口已经可以实现收取监控(但是会有漏掉的情况,还要在观察)
    Cisco Jabber:可以实现打电话的功能。但没有找到服务接口,目前是模拟键鼠操作。

    遇到的问题是:
    1、模拟键鼠操作时,依赖电脑是解锁的;但公司规定,无法长期处于解锁状态。
    2、打电话时没有声音,需要模拟音频输入。
    第 2 条附言  ·  2019-07-15 19:33:38 +08:00
    今天发现了打电话软件的新功能,可以不使用鼠标,仅使用 ShellExecute 就可以调用的方式。这样就达到了锁屏仍能调用的目的。

    现在还剩的问题就是:如何发声了。
    17 条回复    2019-07-15 16:28:42 +08:00
    ysc3839
        1
    ysc3839  
       2019-07-08 16:03:34 +08:00 via Android
    也许有办法解决,但估计会很麻烦的。建议还是想别的办法。
    yeyu1989
        2
    yeyu1989  
    OP
       2019-07-08 16:11:27 +08:00
    @ysc3839 python 有锁定情况下登陆操作系统的操作吗
    ysc3839
        3
    ysc3839  
       2019-07-08 16:13:06 +08:00 via Android
    @yeyu1989 我不知道
    PlushieChicka
        4
    PlushieChicka  
       2019-07-09 01:08:55 +08:00
    利用替换 sethc.exe 的粘滞键提权了解一下,可以在未登录状态操作电脑。
    yeyu1989
        5
    yeyu1989  
    OP
       2019-07-09 10:21:48 +08:00
    @PlushieChicka 简单看了以下,对用户的安全管理权限有一定要求。公司的电脑上实现,感觉操作不了呢
    ysc3839
        6
    ysc3839  
       2019-07-09 14:02:25 +08:00 via Android
    这样的需求建议购买个调制解调器,然后在 Linux 系统上运行。
    frmongo
        7
    frmongo  
       2019-07-09 17:23:04 +08:00
    大哥,都 9012 年了,打电话这种通知方式有点太粗暴啊,你可以考虑 post 到钉钉上,最近企业微信也开放了群机器人的通知。你可以考虑试试用用这个,比打电话这种中断式的通信好太多,打电话你还会漏接。钉钉你随时可以看到通知,还能看到历史记录。
    yeyu1989
        8
    yeyu1989  
    OP
       2019-07-09 17:37:16 +08:00
    @frmongo 打电话的目的,就是要用最大权限找到联系人,比如在夜间睡觉的时候。你说的两种方式,本来邮件就是可以做到的...
    petelin
        9
    petelin  
       2019-07-10 10:13:47 +08:00 via iPhone
    Pageduty 现在你的解决方案就有问题
    yeyu1989
        10
    yeyu1989  
    OP
       2019-07-10 16:27:09 +08:00
    @petelin 是哪里有问题呢?将邮件转为电话,有什么问题...
    petelin
        11
    petelin  
       2019-07-10 18:38:54 +08:00 via iPhone
    为什么不直接开一个后台程序读邮件列表我是说登陆上去直接读 然后 call 三方服务打电话
    yeyu1989
        12
    yeyu1989  
    OP
       2019-07-10 19:03:34 +08:00
    @petelin 问题是 call 三方服务这里...怎么 call 三方服务呢...我们公司系统安全限制,没有安装的能打电话的软件只有 cisco jabber 这个了
    yeyu1989
        13
    yeyu1989  
    OP
       2019-07-10 19:12:36 +08:00
    @petelin 允许安装的能打电话的软件只有 cisco jabber 这个了
    jeadong
        14
    jeadong  
       2019-07-12 16:20:21 +08:00
    有什么电邮这么紧急?一定要半夜打电话?我觉得你自动转发结束,然后手机端做点强提醒。半夜把手机短信铃声响一点,都是解决问题的方式,而不是特意要电脑打电话。
    yeyu1989
        15
    yeyu1989  
    OP
       2019-07-13 23:55:17 +08:00 via Android
    @jeadong 可能是工作差异吧。我们晚上收到的常规通知很多,包括邮件、短信,会持续到四点钟,但正常由值班人员关注就行。非常规通知,通常就很紧急,要以最快速度解决。手机端应该区分不了不同的邮件通知。
    jeadong
        16
    jeadong  
       2019-07-15 15:06:44 +08:00
    @yeyu1989 那就不知道怎么做啦 这个场景太特殊,只是我觉得时间花在打电话这个动作上有点浪费。你又不是打骚扰电话。如果我是你,我可能更加多的把精力放在邮件筛选,电脑客户端提醒上,而不是放在打电话上。
    yeyu1989
        17
    yeyu1989  
    OP
       2019-07-15 16:28:42 +08:00
    @jeadong 其实目标只有一个,在晚上大伙都睡觉的时候,可以叫醒别人...工作电脑端的提醒,对睡觉的人而言没用啊...
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1065 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 19:35 · PVG 03:35 · LAX 11:35 · JFK 14:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.