我可以使用 wmi
模块查看我网络上远程计算机上发生的进程。这是一个使用 wmi 监控在我自己的 PC 上创建和删除的进程的示例。
import wmi, multiprocessing
def create():
while True:
crePro = cp()
print('Creation',crePro.Caption,crePro.ProcessId,crePro.CreationDate)
def delete():
while True:
delPro = dp()
print('Deletion',delPro.Caption,delPro.ProcessId,delPro.CreationDate)
c = wmi.WMI()
cp = c.Win32_Process.watch_for("creation")
dp = c.Win32_Process.watch_for("deletion")
if __name__ == '__main__':
createProc = multiprocessing.Process(target = create)
deleteProc = multiprocessing.Process(target = delete)
createProc.start()
deleteProc.start()
我还阅读了有关使用 win32gui
获取事件窗口的内容。
import win32gui
win32gui.GetForegroundWindow()
而且我在 win32con
中读到了 WM_SETFOCUS
和 WM_ACTIVE
的存在,但我不确定如何连接到这些远程 PC 上的流。
我的问题是:
如何监视远程 PC 的事件窗口(我想使用 WM_SETFOCUS
或 WM_ACTIVE
)
最佳答案
要获取事件窗口,您可以这样做:
from win32gui import GetWindowText, GetForegroundWindow
active_window = GetWindowText(GetForegroundWindow())
但是,这不会在每次 active_window 更改时都向您发送信号。您可以不时阅读此内容并查看 active_window 是否已更改。
关于python - 如何监视远程 PC 上的事件窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24368184/