Advertisement
Guest User

Untitled

a guest
Jan 22nd, 2018
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.59 KB | None | 0 0
  1. .386
  2. .model flat,stdcall
  3. option casemap:none
  4. include \masm32\include\windows.inc
  5. include \masm32\include\user32.inc
  6. include \masm32\include\kernel32.inc
  7. includelib \masm32\lib\user32.lib
  8. includelib \masm32\lib\kernel32.lib
  9.  
  10. .data
  11. Klasa db "WinClass",0
  12. Tytul db "Kurs MASM32 - Pierwsze okno",0
  13.  
  14. .data?
  15. hInstance HINSTANCE ?
  16.  
  17. .code
  18. start:
  19. invoke GetModuleHandle,0
  20. mov hInstance,eax
  21. call WinMain
  22. invoke ExitProcess,0
  23.  
  24. WinMain proc
  25. LOCAL wc:WNDCLASSEX
  26. LOCAL msg:MSG
  27.  
  28. mov wc.cbSize,sizeof WNDCLASSEX
  29. mov wc.style,CS_HREDRAW or CS_VREDRAW
  30. mov wc.lpfnWndProc,offset WndProc
  31. mov wc.cbClsExtra,0
  32. mov wc.cbWndExtra,0
  33. push hInstance
  34. pop wc.hInstance
  35. mov wc.hbrBackground,COLOR_WINDOW+1
  36. mov wc.lpszMenuName,0
  37. mov wc.lpszClassName,offset Klasa
  38. invoke LoadIcon,0,IDI_APPLICATION
  39. mov wc.hIcon,eax
  40. mov wc.hIconSm,eax
  41. invoke LoadCursor,0,IDC_ARROW
  42. mov wc.hCursor,eax
  43. invoke RegisterClassEx,addr wc
  44. invoke CreateWindowEx,0,addr Klasa,addr Tytul,\
  45. WS_OVERLAPPEDWINDOW or WS_VISIBLE,100,100,320,200,0,0,hInstance,0
  46.  
  47. .WHILE TRUE
  48. invoke GetMessage,addr msg,0,0,0
  49. .BREAK .IF (!eax)
  50. invoke TranslateMessage,addr msg
  51. invoke DispatchMessage,addr msg
  52. .ENDW
  53. ret
  54. WinMain endp
  55.  
  56. WndProc proc hWnd:HWND,uMsg:UINT,wParam:WPARAM,lParam:LPARAM
  57. .IF uMsg==WM_DESTROY
  58. invoke PostQuitMessage,0
  59. .ELSE
  60. invoke DefWindowProc,hWnd,uMsg,wParam,lParam
  61. ret
  62. .ENDIF
  63. WndProc endp
  64. end start
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement