TestApp.cpp
上传用户:jstlsd
上传日期:2007-01-13
资源大小:186k
文件大小:2k
- #include <windows.h>
- HWND g_hWnd;
- HMODULE hHookLib = NULL;
- LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
- int APIENTRY WinMain(
- HINSTANCE hInstance,
- HINSTANCE hPrevInstance,
- LPSTR lpszCmdLine,
- int nCmdShow
- )
- {
- HWND hwnd;
- MSG msg ;
- WNDCLASS wndclass ;
- if(!hPrevInstance)
- {
- wndclass.style = CS_HREDRAW | CS_VREDRAW ;
- wndclass.lpfnWndProc = WndProc ;
- wndclass.cbClsExtra = 0 ;
- wndclass.cbWndExtra = 0 ;
- wndclass.hInstance = hInstance ;
- wndclass.hIcon = LoadIcon(NULL, IDI_APPLICATION) ;
- wndclass.hCursor = LoadCursor(NULL, IDC_ARROW) ;
- wndclass.hbrBackground =(HBRUSH) GetStockObject(WHITE_BRUSH) ;
- wndclass.lpszMenuName = NULL;
- wndclass.lpszClassName = "DemoClass" ;
- RegisterClass(&wndclass) ;
- }
- hwnd = ::CreateWindow(
- "DemoClass", // LPCTSTR lpClassName
- "Test Application", // LPCTSTR lpWindowName
- WS_OVERLAPPEDWINDOW, // DWORD dwStyle
- CW_USEDEFAULT, // int x
- 0, // int y
- CW_USEDEFAULT, // int nWidth
- 0, // int nHeight
- NULL, // HWND hWndParent
- NULL, // HMENU hMenu
- hInstance, // HANDLE hInstance
- NULL // PVOID lpParam
- );
- g_hWnd = hwnd;
-
- ::ShowWindow(hwnd, nCmdShow) ;
- ::UpdateWindow(hwnd) ;
- while(::GetMessage(&msg, NULL, 0, 0))
- {
- ::TranslateMessage(&msg) ;
- ::DispatchMessage(&msg) ;
- }
-
- return msg.wParam ;
- }
- LRESULT CALLBACK WndProc(
- HWND hwnd,
- UINT message,
- WPARAM wParam,
- LPARAM lParam
- )
- {
- static char pszLine0[80] = "Hello from TestApp!";
- static wchar_t pszLine1[80] = L"Hello from TestApp!";
- HDC hDC;
- PAINTSTRUCT ps;
-
- switch(message)
- {
- case WM_PAINT:
- hDC = ::BeginPaint(hwnd, &ps);
- ::TextOutA(hDC, 0, 0, pszLine0, lstrlen(pszLine0));
- ::TextOutW(hDC, 0, 20, pszLine1, wcslen(pszLine1));
- ::EndPaint(hwnd, &ps);
- return 0;
- case WM_DESTROY :
- ::PostQuitMessage(0) ;
- return 0;
- default:
- break;
- }
- return DefWindowProc(hwnd, message, wParam, lParam) ;
- }