jsjl_for_ubuntu12.04
1、
VC++代码:
#include <stdio.h>
#include <windows.h>
#include <wchar.h> void MoveMouseZ(int _iX, int _iY);
HWND FindSubBtn01(HWND _hWndParent, char *pcSubWndText);
void PrintLocalTime(); void main()
{
Sleep( * );
PrintLocalTime();
printf("\t 程序开始\n"); char *pcParentWndText = "加速精灵 v2.6";
char *pcSubBtnText = "连 接"; bool bBtnConn = false; // 指示 "连 接"按钮 是否为可点击的状态
int iCounter = ;
int iCounterMoveMouse = ;
while ()
{
iCounterMoveMouse ++;
if (iCounterMoveMouse >= )
{
//*
MoveMouseZ(, );
MoveMouseZ(, );
//*/ iCounterMoveMouse = ;
}
/*
HWND hWndParent = ::FindWindowA(NULL, pcParentWndText);
if (hWndParent == 0)
{
PrintLocalTime();
printf("\t Window \"%s\" is not found .\n", pcParentWndText);
}
else
{
HWND hBtnLianJie = FindSubBtn01(hWndParent, pcSubBtnText);
if (hBtnLianJie == 0)
{
PrintLocalTime();
printf("\t Sub Button \"%s\" is not found .\n", pcSubBtnText);
}
else
{
bool bEnabled = ::IsWindowEnabled(hBtnLianJie);
if (bEnabled)
{
PrintLocalTime();
printf("\t 连接断开,即将尝试重新连接\n"); bBtnConn = true;
iCounter = 0; // 模拟 button click事件
// http://blog.sina.com.cn/s/blog_6414c87b0101892x.html
LONG idBtn = GetWindowLong(hBtnLianJie, GWL_ID);
::SendMessageA(hWndParent, WM_COMMAND, MAKEWPARAM(idBtn, BN_CLICKED), (LPARAM)hBtnLianJie);
}
else
{
if (bBtnConn)
iCounter ++; // 连续监测15次,"连 接"按钮都是不可点击的状态,则说明 貌似已经连上去了。
if (iCounter > 15)
{
PrintLocalTime();
printf("\t 貌似 已经重新连接成功\n"); bBtnConn = false;
iCounter = 0;
}
}
}
}
//*/
::Sleep();
} system("pause");
} // 找窗口"加速精灵 v2.6"下的,窗口标题为"连 接"的按钮 - 方式(1)
HWND FindSubBtn01(HWND _hWndParent, char *pcSubWndText)
{
HWND hWndLianJie = ::FindWindowExA(_hWndParent, NULL, "Button", pcSubWndText);
//printf("FindSubBtn01 : 0x%08X\n", hWndLianJie); return hWndLianJie;
} HWND g_hWndLianJie = ; BOOL CALLBACK EnumChildProc(HWND _hWndChild, LPARAM _lParam)
{
char bufText[] = {};
::GetWindowTextA(_hWndChild, bufText, sizeof(bufText));
//printf("\t%s\n", bufText);
if ( == strcmp((char*)_lParam, bufText))
{
//printf("\t\t==\n");
g_hWndLianJie = _hWndChild;
return false;
}
return true;
} // 找窗口"加速精灵 v2.6"下的,窗口标题为"连 接"的按钮 - 方式(2)
HWND FindSubBtn02(HWND _hWndParent, char *pcSubWndText)
{
EnumChildWindows(_hWndParent, EnumChildProc, (LPARAM)pcSubWndText);
return g_hWndLianJie;
} void MoveMouseZ(int _iX, int _iY)
{
// 新的 坐标点 (_iX, _iY) // 屏幕分辨率
int iX = ;
int iY = ;
// 乘数(为什么要乘以这个?暂时不知...)
int iZ = ;
//Sleep(2000);
::mouse_event(MOUSEEVENTF_MOVE | MOUSEEVENTF_ABSOLUTE, , , , );
//Sleep(1000);
::mouse_event(MOUSEEVENTF_MOVE | MOUSEEVENTF_ABSOLUTE, _iX * iZ / iX, _iY * iZ / iY, , );
} void PrintLocalTime()
{
//获取当地的时间。
SYSTEMTIME stLocal;
::GetLocalTime(&stLocal); //显示时间的间隔。
printf("%04u%02u%02u %02u:%02u:%02u:%u \n",
stLocal.wYear, stLocal.wMonth, stLocal.wDay,
stLocal.wHour, stLocal.wMinute, stLocal.wSecond,
stLocal.wMilliseconds);
}
2、
jsjl_for_ubuntu12.04的更多相关文章
- Python学习--04条件控制与循环结构
Python学习--04条件控制与循环结构 条件控制 在Python程序中,用if语句实现条件控制. 语法格式: if <条件判断1>: <执行1> elif <条件判断 ...
- Ubuntu 14.04中Elasticsearch集群配置
Ubuntu 14.04中Elasticsearch集群配置 前言:本文可用于elasticsearch集群搭建参考.细分为elasticsearch.yml配置和系统配置 达到的目的:各台机器配置成 ...
- win8.1硬盘安装ubuntu14.04双系统
在网上找了很多方法都失败了,原因是大多数方法都是用mbr方式安装的,如grub4dos,easybcd.以至于连自己都怀疑win8能不能用硬盘安装,差点就去买个u盘来安装了,就在打算放弃的时候在ubu ...
- 使用win10远程控制ubuntu16.04
使用win10远程控制ubuntu16.04,网上很多需要安装xfce桌面的.今天介绍一下,不需要安装其他桌面,使用Ubuntu16.04自带桌面,漂亮美观. Ubuntu16.04端: 1.打开终端 ...
- ubuntu14.04下安装node.js
在网上查了下,起初是下载了一个node-v0.12.7-linux-x64.tar.gz,解压在/home/node路径下,然后在/etc/profile中添加如下命令: export NODE_HO ...
- mono3.2和monodevelop4.0在ubuntu12.04上两天的苦战
首先第一步是设置ubuntu server 12.04版更新源,推荐中科大的比较快:deb http://debian.ustc.edu.cn/ubuntu/ precise main multive ...
- Jexus Web Server 完全傻瓜化图文配置教程(基于Ubuntu 12.04.3 64位)[内含Hyper-v 2012虚拟机镜像下载地址]
1. 前言 近日有感许多新朋友想尝试使用Jexus,不过绝大多数都困惑徘徊在Linux如何安装啊,如何编译Mono啊,如何配置Jexus啊...等等基础问题,于是昨日向宇内流云兄提议,不如搞几个配置好 ...
- Ubuntu14.04配置Mono+Jexus
总所周知,ASP.NET是微软公司的一项技术,是一个网站服务端开发的一种技术,它可以在通过HTTP请求文档时再在Web服务器上动态创建它们,就是所谓动态网站开发,它依赖运行于 IIS 之中的程序 .但 ...
- deepsooncms在Ubuntu 14.04上部署教程
deepsooncms在Ubuntu 14.04上部署教程 一.安装mono1.在命令行运行sudo apt-key adv --keyserver keyserver.ubuntu.com --re ...
随机推荐
- set的一些数学运算
python的set和其他语言类似, 是一个无序不重复元素集, 基本功能包括关系测试和消除重复元素. 集合对象还支持union(联合), intersection(交), difference(差)和 ...
- php hash算法
任意长度的输入, 固定长度的输出 ,该输出就是hash值,这种转换就是一种压缩映射,也就是hash值的空间远远小于输入的空间, 不同的输入可能散列成相同的输出,而不能从hash值来唯一的确定输入值. ...
- cxf的使用
java的一个rest路径包含五个部分 1.容器路径,如tomcat的文件包名,jetty的context等 2.web.xml -配置cxf或者sevlet等 3.cxf.xml 4.具体的实现类中 ...
- 【kafka学习之四】kafka集群性能测试
kafka集群的性能受限于JVM参数.服务器的硬件配置以及kafka的配置,因此需要对所要部署kafka的机器进行性能测试,根据测试结果,找出符合业务需求的最佳配置. 1.kafka broker j ...
- Scrapy是什么
1.Scrapy是蜘蛛爬虫框架,我们用蜘蛛来获取互联网上的各种信息,然后再对这些信息进行数据分析处理. 2.Scrapy的组成 引擎:处理整个系统的数据流处理,出发事务 调度器: 接受引擎发过来的请求 ...
- 数据仓库原理<3>:数据仓库与ODS
1. 引言 本篇主要讲述操作数据存储(ODS)系统产生的背景.定义.特点,以及它与数据仓库的区别. 在前两篇,笔者介绍了什么是数据仓库?为什么需要数据仓库?数据仓库系统的体系结构是什么?因此可能在读者 ...
- java后台获取和js拼接展示信息
java后台获取和js拼接展示信息: html页面代码: <div class="results-bd"> <table id="activityInf ...
- java多线程-----volatile
谈谈Java中的volatile 内存可见性 留意复合类操作 解决num++操作的原子性问题 禁止指令重排序 总结 内存可见性 volatile是Java提供的一种轻量级的同步机制,在并发编程中, ...
- LOJ10066 新的开始
LOJ10066 新的开始 prim 典型题.碰到这种情况,只要建一个虚拟节点,和其他的点连边,按题目给权值即可 代码中把n+1当成虚拟节点 懒得写kruskal就用prim了 #include< ...
- 20145314郑凯杰《网络对抗技术》恶意DLL注入进程(进程捆绑)的实现
20145314郑凯杰<网络对抗技术>恶意DLL注入进程(进程捆绑)的实现 一.本节摘要 简介:在这部分里,要实现将恶意后门悄无声息地与进程进行捆绑,通过和已运行的进程进行捆绑,达到附着攻 ...