这几天要在公司远程家里的电脑,家里的电脑是使用路由器拨号的。所以远程桌面遇到了那个经典的问题IP IP IP 是动态的怎么办??????,
查了点资料又花生壳的等。。映射动态IP的试下好像不太管用。公司网速不快远程最理想的当属QQ,可是家里没人谁按远程协助按钮?(有人也涉及到隐私问题呵呵)网查了一推自动QQ远程协助软件 不是木马就是不好用!算了作为一名程序袁还是自己动手吧!!网查了一推资料和问其他VC高手终于搞定,写的比较简陋,窗口名称和鼠标点击位置都是写死的,就是为了快而简单(20行代码呵呵),,能达到要求就OK了(就我自己用呵呵)。。
原理:就是监听QQ聊天窗体的显示,用FindWindow("类名","窗口标题");得到窗口句柄判断 要监视的窗体状态 。然后模拟鼠标点击 “远程协助按钮”
代码:1.首先来个定时器每3秒检查一次(回调函数要先声明后使用) 环境VC++6.0
void CALLBACK TimerProc(HWND hwnd,UINT uMsg,UINT idEvent,DWORD dwTime );//声明回调函数
SetTimer(1,3000,(TIMERPROC)TimerProc);//用回调函数处理,此时对话框的消息处理函数不再处理。3s
2.接下来检查聊天窗口状态,模拟点击相应的位置。这里涉及到取窗口的 类名和窗口标题 (想我这样对VC不是很熟的,可能不知道怎么弄。用WindowSpy就OK了),经测试QQ的聊天窗口的类名貌似都一样的,标题就是QQ好友的备注名称。坐标可用鼠标模拟软件获取。。
/*
* 定时器回调函数
*/
void CALLBACK TimerProc(HWND hwnd,UINT uMsg,UINT idEvent,DWORD dwTime )
{
struct HWND__ * m_pWnd=FindWindow("TXGuiFoundation","金色阳光");//根据(类名,窗口标题)查找窗体返回句柄(窗口标题就是QQ好友的备注姓名)
if(m_pWnd)
{
if(!::IsIconic(m_pWnd)){//如果窗口不是最小化状态
//Sleep(3000);//等待3秒,待聊天窗口初始化完毕(以免点击到其他位置)
//AfxMessageBox("找到窗体了,并且可见状态");
mouseLeftClick(620,256);//单击远程按钮(位置信息可以用鼠标模拟点击软件获取)
mouseLeftClick(915,193);//单击最小化按钮 让窗口最小化 以免 重复点击
}
}
}
3.模拟鼠标点击
/*
* 鼠标左键单击 坐标x,y
*/
void mouseLeftClick(int x,int y){
SetCursorPos(x, y);// 位置
//单击
mouse_event(MOUSEEVENTF_LEFTDOWN,0,0,0,0);
mouse_event(MOUSEEVENTF_LEFTUP,0,0,0,0);
}
OK ,现在按照你设置好的QQ好友 ,用好友QQ登陆给你发个抖动窗口(让聊天窗口显示出来),接着你的电脑就会自动向好友发远程请求了。
用两个QQ就可以远程控制其他电脑了再也不用担心什么公网,动态IP 路由端口映射等麻烦的问题了呵呵。。。
分享到:
相关推荐
在学习过程中用VC++制作的一款游戏,可以和手机游戏媲美,有很高的参考价值
VC++6.0简体中文版本,支持win7提示兼容问题忽略就行。 此前装过别的版本,但win7大多装不上,有的能装上但过程太繁琐。 别的版本有几百兆,而这只有30来兆,而且可直接安装运行,对于专业人士来说此版本功能过于简单...
VC++6.0绿色版,Win764位下可以正常运行,解决安装之苦。
编者 求是科技 王正军 《VC++6.0从入门到精通》源码,
使用VC++6.0,编写的MFC程序,实现正弦曲线的绘制,包括横纵坐标轴的绘制。
用VC++6.0打开工程文件dsw即可查看和编译代码。。。。。。
可以在win7上使用的VC++6.0,包含英文版
VC++ 6.0 音乐播放器VC++ 6.0 音乐播放器VC++ 6.0 音乐播放器VC++ 6.0 音乐播放器VC++ 6.0 音乐播放器
免费vc++6.0安装包程序(majin)免费vc++6.0安装包程序(majin)免费vc++6.0安装包程序(majin)免费vc++6.0安装包程序(majin)免费vc++6.0安装包程序(majin)免费vc++6.0安装包程序(majin)免费vc++6.0安装包...
vc++6.0数据库编程源代码码;vc++6.0数据库编程源代码码
BMP转换成JPG vc++6.0 实现 源代码 工程
vc++6.0下开发的仓库管理系统,采用ADO操作数据库,使用数据库为ACCE-vc 6.0's warehouse management system using ADO operational database, using the database to ACCE
VC++6.0编译通过的读写CSV文件的代码及实例 在VC++6.0中编译通过,实测可用 通用性很不错 包含CSV读取的实例
VC++6.0快捷键大全 为VC++6.0快捷键大全.txt 方便参阅
VC++6.0 开发宝典 VC++6.0 开发宝典 VC++6.0 开发宝典
找到的几个资源,很不错的,分享一下 有推箱子,连连看,扫雷等一些经典的游戏
用VC++6.0做的一个计算器,仿微软附件自带计算器而作,实现其全部功能
VC++6.0 基于MFC的windows资源管理器风格单文档应用程序 学生管理系统实现增删改查学生信息
MFC记事本(VC++6.0源代码)
精简版VC++6.0精简版VC++6.0精简版VC++6.0精简版VC++6.0精简版VC++6.0