最近我闲来无事,用C++做了个软件,下面我就来和大家分享一下
注:转载记得标注出处
上代码!
#include<windows.h>
#include<cstring>
#include<ctime>
char y[50];
char *intToStr(int x)
{
int t=0,i=0;
while(x)
{
t*=10;
t+=x%10;
x/=10;
}
while(t)
{
y[i++]=t%10+48;
t/=10;
}
y[i]=0;
return y;
}
LRESULT CALLBACK WndProc(HWND hWnd,UINT message,WPARAM wParam,LPARAM lParam)
{
switch(message)
{
case WM_CREATE:
{
HANDLE hImage=LoadImage(NULL,"Big Banana Virus//Big Banana.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
if(hImage)
{
HWND hStatic=CreateWindow("STATIC","",WS_CHILD|WS_VISIBLE|SS_BITMAP,50,50,1200,800,hWnd,NULL,NULL,NULL);
SendMessage(hStatic,STM_SETIMAGE,(WPARAM)IMAGE_BITMAP,(LPARAM)hImage);
}
break;
}
case WM_DESTROY:
PostQuitMessage(0);
break;
default:
return DefWindowProc(hWnd,message,wParam,lParam);
}
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int nCmdShow)
{
FreeConsole();
WNDCLASSEX wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hIcon = NULL;
wcex.hCursor = LoadCursor(NULL, IDC_ARROW);
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
wcex.lpszMenuName = NULL;
wcex.lpszClassName = "Big Banana";
wcex.hIconSm = NULL;
if(!RegisterClassEx(&wcex))
{
MessageBox(NULL,"Window Registration Failed!","Error",MB_ICONEXCLAMATION|MB_OK);
return 1;
}
int start=clock();
for(;;)
{
HWND hWnd=CreateWindow("Big Banana","Big Banana",WS_OVERLAPPEDWINDOW,50,20,1200,800,NULL,NULL,hInstance,NULL);
//HWND hWnd=CreateWindow("MyWindowClass","My Window",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL);
if(!hWnd)
{
MessageBox(NULL,"Window Creation Failed!","Error",MB_ICONEXCLAMATION|MB_OK);
return 1;
}
ShowWindow(hWnd,nCmdShow);
UpdateWindow(hWnd);
MSG msg;
int i=999;
while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
char mb[100];
strcpy(mb,"大香蕉,一条大香蕉,嘿!你的感觉真的很奇妙~\n\n还需要再按");
strcat(mb,intToStr(i));
strcat(mb,"次才能关闭。\n");
MessageBox(NULL,mb,"Big Banana",MB_ICONASTERISK|MB_OK);
i--;
if(i<=0)
{
strcpy(mb,"恭喜你速通Big Banana病毒,耗时");
strcat(mb,intToStr((clock()-start)/1000.0));
strcat(mb,"秒。\n");
MessageBox(NULL,mb,"Big Banana",MB_ICONEXCLAMATION|MB_OK);
return 0;
}
}
}
return 0;
}
然后在程序同目录下建一个名叫“Big Banana Virus”的文件夹,把图片放进去,建议放我提供的这个:
然后编译运行就可以了。
注:编译环境为TDM-GCC 4.9.2 64-bit Release
好了,谢谢大家,今天的分享就到此结束咯!