我可以使用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()
我已经了解WM_SETFOCUS
中WM_ACTIVE
和win32con
的存在,但我不确定如何在远程PC上连接这些流
我的问题是:
如何监控远程PC的活动窗口(我想使用WM_SETFOCUS
或WM_ACTIVE
)
答案 0 :(得分:1)
要获取活动窗口,您可以执行此操作:
from win32gui import GetWindowText, GetForegroundWindow
active_window = GetWindowText(GetForegroundWindow())
但是,每次active_window更改时,都不会向您发送信号。您可以不时阅读此信息,看看active_window是否已更改。