5.rect函数与MoveWindow函数的运用(原创病毒,非常好玩)

rect函数与MoveWindow函数的运用

今天打算新作一个病毒,刚好用到了,就说一下

rect对象用来存储一个矩形框的左上角坐标、宽度和高度。

left: 指定矩形框左上角的x坐标

top: 指定矩形框左上角的y坐标

right: 指定矩形框右下角的x坐标

bottom:指定矩形框右下角的y坐标

MoveWindow函数:改变指定窗口的位置和大小。

语法:BOOL MoveWindow( HWND hWnd, int X, int Y, int nWidth, int nHeight, BOOL bRepaint )

获取句柄不会的可以看前几期(http://t.csdnimg.cn/krZU0)

我个人想实现的效果是要点到运行框关闭键的时候就移一点,但是在下方状态栏仍然可以关闭,所以有两个版本:
(本代码仅供娱乐,任何责任与作者无关)

1.隐藏版

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
void move(HWND hwnd,RECT rect)
{
	int a=rand();
	if(a%2==0)
	{
		if(a%2==0)
		{
			MoveWindow(hwnd,rect.left+50,rect.top,rect.right-rect.left,rect.bottom-rect.top,TRUE);
		}
		else
		{
			MoveWindow(hwnd,rect.left-rect.right,rect.top,rect.right+50,rect.bottom-rect.top,TRUE);
		}
	}
	else
	{
		if(a%2==0)
		{
			MoveWindow(hwnd,rect.left,rect.top+20,rect.right,rect.bottom-rect.top,TRUE);
		}
		else
		{
			MoveWindow(hwnd,rect.left,rect.top-rect.bottom,rect.right,rect.bottom+20,TRUE);
		}
	}
}
void fun()
{
	RECT rect;
	HWND hwnd=GetForegroundWindow();
    GetWindowRect(hwnd,&rect);
    POINT pt;
    GetCursorPos(&pt);
    if((pt.x>=rect.right-100&&pt.x<=rect.right+30)&&(pt.y>=rect.top-40&&pt.y<=rect.top+30))
    	MoveWindow(hwnd,rect.left+50,rect.top,rect.right-rect.left,rect.bottom-rect.top,TRUE);
}
int main()
{
	HWND hwnd=GetForegroundWindow();
	ShowWindow(hwnd,SW_HIDE);
    while(1)
    {
    	fun();
    	Sleep(10);
	}
}

第二个:
不隐藏,但是会一直闪,我打算加一个置顶,不会的看这章(http://t.csdnimg.cn/4mKoP)

#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
void move(HWND hwnd,RECT rect)
{
	int a=rand();
	if(a%2==0)
	{
		if(a%2==0)
		{
			MoveWindow(hwnd,rect.left+50,rect.top,rect.right-rect.left,rect.bottom-rect.top,TRUE);
		}
		else
		{
			MoveWindow(hwnd,rect.left-rect.right,rect.top,rect.right+50,rect.bottom-rect.top,TRUE);
		}
	}
	else
	{
		if(a%2==0)
		{
			MoveWindow(hwnd,rect.left,rect.top+20,rect.right,rect.bottom-rect.top,TRUE);
		}
		else
		{
			MoveWindow(hwnd,rect.left,rect.top-rect.bottom,rect.right,rect.bottom+20,TRUE);
		}
	}
}
void fun()
{
	RECT rect;
	HWND hwnd=GetForegroundWindow();
    GetWindowRect(hwnd,&rect);
    POINT pt;
    GetCursorPos(&pt);
    if((pt.x>=rect.right-100&&pt.x<=rect.right+30)&&(pt.y>=rect.top-40&&pt.y<=rect.top+30))
    	MoveWindow(hwnd,rect.left+50,rect.top,rect.right-rect.left,rect.bottom-rect.top,TRUE);
}
int main()
{
	HWND hwnd=GetForegroundWindow();
    while(1)
    {
    	SetCursorPos(rand()%1000,rand()%1000);
    	fun();
    	system("color b4");
		system("color c4");
		system("color d4");
		system("color e4");
		system("color f4");
		system("color 64");
		system("color 34");
		system("color 54");
		system("color 84");
    	Sleep(10);
	}
}

​以上就是新的病毒了,纯原创

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值