nop*_*ole 1 ruby python perl winapi
使用Perl,Python或Ruby,我可以编写一个程序,可能调用Win32 API,在预定的时间点击屏幕,就像每1小时一样?
细节:
这是为了实验 - 点击对Flash内容以及屏幕上的任何元素都有效吗?如果程序可以记录点击需要在屏幕上显示的位置,或者至少在屏幕上绘制一个红点以显示点击的位置,那就太好了.
点击是针对窗口还是只是屏幕上的一般像素?如果弹出一些病毒扫描程序覆盖点击发生的地方怎么办?(尽管如果程序首先点击窗口的空白区域,那么它可以首先将该窗口带到前台).
顺便说一句,Grease Monkey或任何Firefox附加组件也可以用来做这个吗?
在Python中有ctypes,在Perl中有Win32 :: API
ctypes例子
from ctypes import *
windll.user32.MessageBoxA(None, "Hey MessageBox", "ctypes", 0);
Run Code Online (Sandbox Code Playgroud)
Win32 :: Api示例
use Win32::GUI qw( WM_CLOSE );
my $tray = Win32::GUI::FindWindow("WindowISearchFor","WindowISearchFor");
Win32::GUI::SendMessage($tray,WM_CLOSE,0,0);
Run Code Online (Sandbox Code Playgroud)
要回答实际问题,在Perl中,您将使用Win32 :: GuiTest模块提供的SendMouse(和相关函数).
#!/usr/bin/perl
use strict;
use warnings;
use Win32::GuiTest qw( MouseMoveAbsPix SendMouse );
MouseMoveAbsPix(640,400);
SendMouse "{LEFTCLICK}";
__END__
Run Code Online (Sandbox Code Playgroud)
更新:
如果弹出一些病毒扫描程序覆盖点击发生的地方怎么办?
在这种情况下,您将使用FindWindowLike查找窗口MouseClick并向该特定窗口发送单击.
| 归档时间: |
|
| 查看次数: |
4808 次 |
| 最近记录: |