윈도우즈 API 정복책에 나오는
가창 첫번째 쏘스인
#include<windows.h>
LRESULT CALLBACK WndProc(HWND, UINT, WPARAM, LPARAM);
HINSTANCE g_hInst;
LPCTSTR lpszClass=TEXT(\"fist\");
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR IpszCmdParam, int nCmdShow){
HWND hWnd;
MSG Message;
WNDCLASS WndClass;
g_hInst=hInstance;
WndClass.cbClsExtra=0;
WndClass.cbWndExtra=0;
WndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
WndClass.hCursor=LoadIcon(NULL,IDI_APPLICATION);
WndClass.hInstance=hInstance;
WndClass.lpfnWndProc=WndProc;
WndClass.lpszClassName=lpszClass;
WndClass.lpszMenuName=NULL;
WndClass.style=CS_HREDRAW|CS_VREDRAW;
RegisterClass(&WndClass);
hWnd=CreateWindow(lpszClass, lpszClass, WS_OVERLAPPEDWINDOW,CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, (HMENU)NULL, hInstance, NULL);
ShowWindow(hWnd, nCmdShow);
while(GetMessage(&Message, NULL, 0,0)){
TranslateMessage(&Message);
DispatchMessage(&Message);
}
return (int)Message.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam){
switch(iMessage){
case WM_DESTROY:
PostQuitMessage(0);
return 0;
}
return (DefWindowProc(hWnd, iMessage, wParam, lParam));
}
요 소스말야
그냥 윈도우창 하나 띠우는 소스라고하는데
분명 컴파일 에러도 없고, 오타도 없어
분명해
근데
왜 실행을 시키면 아무 창도 안뜨는건가요?
작업관리자에는 파일이름.exe 프로세서가 뜬게 표시가 되는데
화면에는 아무것도 안뜨네요..
뭘 수정해야돼죠?
나도 API 정복 첨할떄 왜안될까 햇는데 i 랑 l 이랑 바꿔쓴게 태반이었음
책에 써있는거 폰트가 구분이 안되는 폰트
근데..그렇게 바꿔썻다면 컴파일 에러때 잡힐텐데,,, 나는 컴파일 에러도 없고 실행까진 되는데, 실행창이 안떠요
나도 에러 없었어
!
폰트 나도 공감ㅋㅋ..; 첨하다보니 변수명의미로 잘 모르겠고 그냥 다쳐놓고 안되길레 두세번 다시 쳐보다가 그냥 cv
ShowWindow(hWnd, nCmdShow); 이거를 ShowWindow(hWnd, SW_SHOW); 로 바꿔보삼
http://codepad.org/rSwuEt8i
정상 소스
IpszCmdParam 에서 맨앞에 i가 아니라 L이야 소문자 L
L 맞는 거 같은데
WS_OVERLAPPEDWINDOW 이거도 WS_POPUP 으로 바꿔보세욤
지쟈스..크라이스트.....됀다...헐....
님들 천재인듯
그거 직접 다칠일없으니까 그냥 아 그런게 있구나 하고 복붙하라능