undefined simbol

Тема в разделе "WASM.BEGINNERS", создана пользователем goga2007, 21 мар 2007.

  1. goga2007

    goga2007 New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2007
    Сообщения:
    184
    делаю очередное окно. но фасм не хоч компилить его - 'undefined simbol',-говорит на GetModuleHandle ,хотя я ее определил в импорте .обьясните пожалуйста што за черт?
    Код (Text):
    1. format  PE GUI 4.0
    2. entry start
    3.  
    4. include 'c:\program files\fasmw167\include\win32a.inc'
    5.  
    6.  
    7. section '.data' data readable writeable
    8.  
    9.   class  db     'class',0
    10.   caption  db   'Caption',0
    11.   wc     WNDCLASS 0,windowproc,0,0,NULL,NULL,NULL,COLOR_BTNFACE+1,NULL,class
    12.   msg        MSG
    13.  
    14.  
    15. section '.code' code readable executable
    16.  
    17. start:
    18.       invoke  GetModuleHandle,0
    19.         mov     [wc.hInstance],eax
    20.         invoke  LoadIcon,0,IDI_APPLICATION
    21.         mov     [wc.hIcon],eax
    22.         invoke  LoadCursor,0,IDC_ARROW
    23.         mov     [wc.hCursor],eax
    24.         invoke  RegisterClass,wc
    25. invoke  CreateWindowEx,0,class,caption,WS_VISIBLE+WS_OVERLAPPEDWINDOW,\
    26.         100,100,300,200,NULL,NULL,[wc.hInstance],NULL
    27.  
    28. itsLoop:
    29.  
    30.       invoke   GetMessage,msg,NULL,0,0
    31.       cmp      eax,0
    32.       je       .exit
    33.       invoke   TranslateMessage,msg
    34.       invoke   DispatchMessage,msg
    35.       jmp      itsLoop
    36.  
    37. .exit:
    38.       invoke   ExitProcess,[msg.wParam]
    39.  
    40. proc  windowproc   hwnd,wmsg,wparam,lparam
    41.  
    42.       push  edi esi ebx
    43.       cmp      eax,WM_DESTROY
    44.       je       .destroy
    45.       invoke   DefWindowProc,[hwnd],[wmsg],[wparam],[lparam]
    46.       jmp      finish
    47.  
    48.   .destroy:
    49.       invoke  PostQuitMessage,0
    50.       xor     eax,eax
    51.  
    52.   finish:
    53.       pop     ebx esi edi
    54.       ret
    55.  
    56. endp
    57.  
    58. section  '.idata' import data readable writeable
    59.  
    60.     library  kernel32,'KERNEL32.DLL',user32,'USER32.DLL'
    61.  
    62.  
    63.     import kernel ,ExitProcess,'ExitProcess',\
    64.                    GetModuleHandle,'GetModuleHandleA'
    65.  
    66.     import user,RegisterClassEx,'RegisterClassA',\
    67.             CreateWindowEx,'CreateWindowExA',\
    68.             DefWindowProc,'DefWindowProcA',\
    69.             GetMessage,'GetMessageA',\
    70.             PostQuitMessage,'PostQuitMessage',\
    71.             LoadCursor,'LoadCursorA',\
    72.             LoadIcon,'LoadIconA',\
    73.             TranslateMessage,'TranslateMessage',\
    74.             DispatchMessage,'DispatchMessageA'
    спасибо.
     
  2. n0name

    n0name New Member

    Публикаций:
    0
    Регистрация:
    5 июн 2004
    Сообщения:
    4.336
    Адрес:
    Russia
    import kernel32...
    import user32...
     
  3. goga2007

    goga2007 New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2007
    Сообщения:
    184
    а не подскажете почему не убивается процесс?
     
  4. goga2007

    goga2007 New Member

    Публикаций:
    0
    Регистрация:
    10 фев 2007
    Сообщения:
    184
    а ,все понял ,спасибо !