这都什么年头了,测试危险程序还用实体机!?
不能用用虚拟机吗,坏了也不怕,
千万不要作死,用实体机测试危险程序(例如此程序)
代码:
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <Windows.h>
#include <graphics.h>
#define NUM 5
using namespace std;
double WIDTH = GetSystemMetrics(SM_CXSCREEN);
double HEIGHT = GetSystemMetrics(SM_CYSCREEN);
double x[NUM] = { (WIDTH / 2.0),(WIDTH / 3.0),(WIDTH / 4.0),(WIDTH / 10.0),(WIDTH / 10.0) };
double y[NUM] = { (HEIGHT / 2.0),(HEIGHT / 3.0),(HEIGHT / 4.0),(HEIGHT / 10.0),(HEIGHT / 10.0) };
double vx[NUM] = { 1.0,1.0,1.0,1.0,1.0 };
double vy[NUM] = { 1.0,1.0,1.0,1.0,1.0 };
double radius[NUM] = { 1.0,1.0,1.0,1.0,1.0 };
void WinSet();
void MOUSE();
void Ballo(){
solidcircle(x[0], y[0], radius[0]);
x[0] = x[0] + vx[0];
y[0] = y[0] + vy[0];
if ((x[0] < radius[0]) || (x[0] >= WIDTH - radius[0]))
vx[0] = -vx[0];
if ((y[0] <= radius[0]) || (y[0] >= HEIGHT - radius[0]))
vy[0] = -vy[0];
setfillcolor(BLUE);
solidcircle(x[0], y[0], radius[0]);
}
void Ballt(){
solidcircle(x[1], y[1], radius[1]);
x[1] = x[1] + vx[1];
y[1] = y[1] + vy[1];
if ((x[1] < radius[1]) || (x[1] >= WIDTH - radius[1]))
vx[1] = -vx[1];
if ((y[1] <= radius[1]) || (y[1] >= HEIGHT - radius[1]))
vy[1] = -vy[1];
setfillcolor(GREEN);
solidcircle(x[1], y[1], radius[1]);
}
void Ballh(){
solidcircle(x[2], y[2], radius[2]);
x[2] = x[2] + vx[2];
y[2] = y[2] + vy[2];
if ((x[2] < radius[2]) || (x[2] >= WIDTH - radius[2]))
vx[2] = -vx[2];
if ((y[2] <= radius[2]) || (y[2] >= HEIGHT - radius[2]))
vy[2] = -vy[2];
setfillcolor(YELLOW);
solidcircle(x[2], y[2], radius[2]);
}
void Ballf(){
solidcircle(x[3], y[3], radius[3]);
x[3] = x[3] + vx[3];
y[3] = y[3] + vy[3];
if ((x[3] < radius[3]) || (x[3] >= WIDTH - radius[3]))
vx[3] = -vx[3];
if ((y[3] <= radius[3]) || (y[3] >= HEIGHT - radius[3]))
vy[3] = -vy[3];
setfillcolor(RED);
solidcircle(x[3], y[3], radius[3]);
}
void Balli(){
solidcircle(x[4], y[4], radius[4]);
x[4] = x[4] + vx[4];
y[4] = y[4] + vy[4];
if ((x[4] < radius[4]) || (x[4] >= WIDTH - radius[4]))
vx[4] = -vx[4];
if ((y[4] <= radius[4]) || (y[4] >= HEIGHT - radius[4]))
vy[4] = -vy[4];
setfillcolor(RGB(128, 128, 255));
solidcircle(x[4], y[4], radius[4]);
}
int main(){
initgraph(WIDTH, HEIGHT);
HWND hWnd = GetHWnd();
SetWindowLong(hWnd, GWL_STYLE, GetWindowLong(hWnd, GWL_STYLE) & ~WS_CAPTION);
MoveWindow(hWnd, 0, 0, WIDTH, HEIGHT, TRUE);
WinSet();
setbkcolor(WHITE);
cleardevice();
BeginBatchDraw();
while (1){
Ballo();
Ballt();
Ballh();
Ballf();
Balli();
FlushBatchDraw();
Sleep(1);
MOUSE();
}
EndBatchDraw();
return 0;
}
void WinSet(){
HWND hWnd = GetHWnd();
::SetWindowLong(hWnd, GWL_STYLE, GetWindowLong(hWnd, GWL_STYLE) & (~(WS_CAPTION | WS_SYSMENU | WS_SIZEBOX)));
::SetWindowLong(hWnd, GWL_EXSTYLE, GetWindowLong(hWnd, GWL_EXSTYLE) & (~(WS_EX_WINDOWEDGE | WS_EX_DLGMODALFRAME)) | WS_EX_LAYERED | WS_EX_TOOLWINDOW);
SetWindowPos(hWnd, HWND_TOPMOST, (GetSystemMetrics(SM_CXSCREEN) - getwidth()) / 2, (GetSystemMetrics(SM_CYSCREEN) - getheight()) / 2, getwidth(), getheight(), SWP_SHOWWINDOW | SWP_FRAMECHANGED | SWP_DRAWFRAME);
SetLayeredWindowAttributes(hWnd, 0x000000, 0, LWA_COLORKEY);
}
void MOUSE(){
int x, y;
x =0;
y =0;
SetCursorPos(x, y);
}