小编Blu*_*bin的帖子

有没有办法仅当 python 中的运行时标志为 true 时才继承类?

我希望仅当运行时标志打开时才A继承现有的类。B这可能吗?

通常对于这些情况,我要么

  1. 默认情况下继承,如果该标志为 FalseA则不B使用B

  2. 创建另一个A_mod继承自A和的类B,并在该标志为 true 时使用该类。

python

3
推荐指数
1
解决办法
95
查看次数

为什么 SendMessage 对某些应用程序不起作用?

背景:

我试图编写一个自动点击器来在后台点击应用程序(Roblox,而不是试图做任何恶意的事情)。我能够获取该窗口并执行诸如关闭它之类的命令。但是,当尝试将点击发送到窗口时,它会返回 0。(我正在使用 SendMessage,因此不会激活窗口。)

最小可重现示例:

import win32gui
import win32con
import win32api
Run Code Online (Sandbox Code Playgroud)
hwnd = win32gui.FindWindow(None, "Roblox")

while True:
    lParam = win32api.MAKELONG(100, 100)
    temp = win32gui.SendMessage(hwnd, win32con.WM_LBUTTONDOWN, None, lParam)
    win32gui.SendMessage(hwnd, win32con.WM_LBUTTONUP, None, lParam)
    print(temp)
Run Code Online (Sandbox Code Playgroud)

我尝试过的事情:

  1. 我尝试更改窗口以查看是否是错误的窗口,或者是否没有看到该窗口

  2. 我尝试正常发送消息:

    lParam = win32api.MAKELONG(100, 100)  # Get the coordinates and change to long
    temp = win32gui.SendMessage(hwnd, win32con.WM_LBUTTONDOWN, None, lParam)  # Send message to handle
    win32gui.SendMessage(hwnd, win32con.WM_LBUTTONUP, None, lParam)  # Release key from sent message to handle
    
    Run Code Online (Sandbox Code Playgroud)
  3. 我在其他窗口上尝试过,它有效,但不适用于 Roblox

  4. 我尝试使用其他命令并且它有效,但点击却不起作用。这有效:(所以我知道这是正确的窗口)

    temp = win32gui.SendMessage(hwnd, win32con.WM_CLOSE, 0, …
    Run Code Online (Sandbox Code Playgroud)

python winapi win32gui

2
推荐指数
1
解决办法
2086
查看次数

标签 统计

python ×2

win32gui ×1

winapi ×1