Проблема с библеотекой

Тема в разделе "WASM.BEGINNERS", создана пользователем dreamer, 30 авг 2006.

  1. dreamer

    dreamer New Member

    Публикаций:
    0
    Регистрация:
    27 май 2006
    Сообщения:
    3
    Адрес:
    matrix
    Всем привет!
    Подскажите плз в чем ошибка:

    создаю библиотеку:

    Код (Text):
    1.         .386
    2.     .model flat, stdcall
    3.     option casemap :none
    4.  
    5.     include \MASM32\INCLUDE\windows.inc
    6.     include \MASM32\INCLUDE\kernel32.inc
    7.     include \MASM32\INCLUDE\shell32.inc
    8.     include \MASM32\INCLUDE\masm32.inc
    9.     include \MASM32\INCLUDE\user32.inc
    10.  
    11.     includelib \MASM32\LIB\kernel32.lib
    12.     includelib \MASM32\LIB\shell32.lib
    13.     includelib \MASM32\LIB\masm32.lib
    14.     includelib \MASM32\LIB\user32.lib
    15.  
    16.  
    17. .data
    18.  
    19. text1 db "Месага из библиотеки",0
    20.  
    21. .code
    22.  
    23. start:
    24.  
    25. mov eax,DWORD PTR [EBP+0CH]
    26. cmp eax,0
    27. jne D1
    28. jmp _Exit
    29.  
    30. D1:
    31. cmp eax,1
    32. jne _Exit
    33.  
    34. invoke MessageBox,NULL, addr text1,addr text1,MB_OK
    35.  
    36. _Exit:
    37. mov eax,1
    38. ret 12
    39.  
    40. DLLP1 proc export
    41. push ebp
    42. mov ebp,esp
    43. cmp DWORD PTR [EBP+8],1
    44. jne _Ex
    45.  
    46. _Ex:
    47. pop ebp
    48. ret 4
    49. DLLP1 ENDP
    50.  
    51. end start[/i]
    52.  
    53. и файл который загружает эту библиотеку:
    54.  
    55.     [i].386
    56.     .model flat, stdcall
    57.     option casemap :none
    58.  
    59.     include \MASM32\INCLUDE\windows.inc
    60.     include \MASM32\INCLUDE\kernel32.inc
    61.     include \MASM32\INCLUDE\shell32.inc
    62.     include \MASM32\INCLUDE\masm32.inc
    63. include \MASM32\INCLUDE\user32.inc
    64.     includelib \MASM32\LIB\kernel32.lib
    65.     includelib \MASM32\LIB\shell32.lib
    66.     includelib \MASM32\LIB\masm32.lib
    67. includelib \MASM32\LIB\user32.lib
    68.  
    69. .data
    70.  
    71. mydll db "my_dll.dll",0
    72.  
    73. text2 db "Не могу загрузить ДЛЛку",0
    74.  
    75. .code
    76.  
    77. start:
    78.  
    79. invoke LoadLibrary, addr mydll
    80.  .if eax==0
    81.    invoke MessageBox,NULL,addr text2,addr text2,MB_OK
    82.  .endif
    83.  
    84.    push    0
    85.    push   0
    86.    call   ExitProcess  
    87.  
    88. end start
    используем тег [ code ]

    В итоге получаю сообщение что библиотеку не могу загрузить а во вторых вылезает ошибка по адресу 00001000

    в чем мой баг? подскажите плз где копать
     
  2. SiruS

    SiruS Алекс

    Публикаций:
    0
    Регистрация:
    19 фев 2005
    Сообщения:
    145
    Адрес:
    Львов
    dreamer

    Взгляни на пример, сразу увидишь в чем твоя "ошыпка" :)
     
  3. dreamer

    dreamer New Member

    Публикаций:
    0
    Регистрация:
    27 май 2006
    Сообщения:
    3
    Адрес:
    matrix
    е мае! СПАСИБО ТЕБЕ ОГРОМНОЕ! РЕСПЕКТ! ТО ЧТО НАДО! с меня бутылка пива! :)))
     
  4. SiruS

    SiruS Алекс

    Публикаций:
    0
    Регистрация:
    19 фев 2005
    Сообщения:
    145
    Адрес:
    Львов
    dreamer

    Не вопрос, где встретимся пива выпить? :)