如何創(chuàng)建一個windows窗口exe文件,具體參照這個博主:
http://t.csdn.cn/pfQK5
以下是實現(xiàn)代碼,注意用vs打開:文章來源:http://www.zghlxwxcb.cn/news/detail-655869.html
#pragma comment( linker, "/subsystem:\"windows\" /entry:\"WinMainCRTStartup\"" )
#include<Windows.h>
LRESULT CALLBACK WinSunProc(HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (uMsg)//通過判斷消息進行消息響應(yīng)
{
case WM_CLOSE:
DestroyWindow(hwnd);//銷毀窗口并發(fā)送WM_DESTROY消息,但是程序沒有退出
break;
case WM_DESTROY:
PostQuitMessage(0);//發(fā)出WM_QUIT消息,結(jié)束消息循環(huán)
break;
default:
return DefWindowProc(hwnd, uMsg, wParam, lParam);//對不感興趣的消息進行缺省處理,必須有該代碼,否則程序有問題
}
return 0;
}
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nShowCmd) {
WNDCLASS wndcls; //創(chuàng)建一個窗體類
wndcls.cbClsExtra = 0;//類的額外內(nèi)存,默認(rèn)為0即可
wndcls.cbWndExtra = 0;//窗口的額外內(nèi)存,默認(rèn)為0即可
wndcls.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH);//獲取畫刷句柄(將返回的HGDIOBJ進行強制類型轉(zhuǎn)換)
wndcls.hCursor = LoadCursor(NULL, IDC_CROSS);//設(shè)置光標(biāo)
wndcls.hIcon = LoadIcon(NULL, IDI_ERROR);//設(shè)置窗體左上角的圖標(biāo)
wndcls.hInstance = hInstance;//設(shè)置窗體所屬的應(yīng)用程序?qū)嵗? wndcls.lpfnWndProc = WinSunProc;//設(shè)置窗體的回調(diào)函數(shù),暫時沒寫,先設(shè)置為NULL,后面補上
wndcls.lpszClassName = L"test";//設(shè)置窗體的類名
wndcls.lpszMenuName = NULL;//設(shè)置窗體的菜單,沒有,填NULL
wndcls.style = CS_HREDRAW | CS_VREDRAW;//設(shè)置窗體風(fēng)格為水平重畫和垂直重畫
RegisterClass(&wndcls);//向操作系統(tǒng)注冊窗體
//產(chǎn)生一個窗體,并返回該窗體的句柄,第一個參數(shù)必須為要創(chuàng)建的窗體的類名,第二個參數(shù)為窗體標(biāo)題名
HWND hwnd = CreateWindow(L"test", L"我的第一個窗口",
WS_OVERLAPPEDWINDOW, CW_USEDEFAULT,
CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT,
NULL, NULL, hInstance, NULL);
ShowWindow(hwnd, SW_SHOWNORMAL);//把窗體顯示出來
UpdateWindow(hwnd);//更新窗體
MSG msg;
//消息循環(huán)
while (GetMessage(&msg, NULL, 0, 0))//如果消息不是WM_QUIT,返回非零值;如果消息是WM_QUIT,返回零
{
TranslateMessage(&msg);//翻譯消息,如把WM_KEYDOWN和WM_KEYUP翻譯成一個WM_CHAR消息
DispatchMessage(&msg);//派發(fā)消息
}
}
之后用PE文件分析工具對這個PE文件的格式進行分析文章來源地址http://www.zghlxwxcb.cn/news/detail-655869.html
到了這里,關(guān)于關(guān)于如何創(chuàng)建一個windows窗口的exe文件的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!