Проблема с исследованием: не могу заставить работать функцию

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

  1. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Короче надо чтобы CreateWindowEX РАБОТАЛА!!!

    Код (Text):
    1.     .file   "ress.asm"
    2.     .text
    3. .globl _ress
    4.     .type   _ress, @function
    5. _ress:
    6. .LFB3:
    7.     pushl   %ebp
    8. .LCFI0:
    9.     movl    %esp, %ebp
    10. .LCFI1:
    11.     subl    $8, %esp
    12. .LCFI2:
    13.     call    CreateWindowEX ; КАК ЗАСТАВИТЬ РАБОТАТЬ?
    14.     leave
    15.     ret
    16. .LFE3:
    17.     .size   _ress, .-_ress
    18.     .section    .eh_frame,"a",@progbits
    19. .Lframe1:
    20.     .long   .LECIE1-.LSCIE1
    21. .LSCIE1:
    22.     .long   0x0
    23.     .byte   0x1
    24.     .string "zP"
    25.     .uleb128 0x1
    26.     .sleb128 -4
    27.     .byte   0x8
    28.     .uleb128 0x5
    29.     .byte   0x0
    30.     .long   CC
    31.     .byte   0xc
    32.     .uleb128 0x4
    33.     .uleb128 0x4
    34.     .byte   0x88
    35.     .uleb128 0x1
    36.     .align 4
    37. .LECIE1:
    38. .LSFDE1:
    39.     .long   .LEFDE1-.LASFDE1
    40. .LASFDE1:
    41.     .long   .LASFDE1-.Lframe1
    42.     .long   .LFB3
    43.     .long   .LFE3-.LFB3
    44.     .uleb128 0x0
    45.     .byte   0x4
    46.     .long   .LCFI0-.LFB3
    47.     .byte   0xe
    48.     .uleb128 0x8
    49.     .byte   0x85
    50.     .uleb128 0x2
    51.     .byte   0x4
    52.     .long   .LCFI1-.LCFI0
    53.     .byte   0xd
    54.     .uleb128 0x5
    55.     .align 4
    56. .LEFDE1:
    57.     .ident  "GNU ASSEMBLER "
    58.     .section    .note.GNU-stack,"",@progbits
     
  2. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    И еще вопросик: Что такое LFrame1?
     
  3. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    hTrader
    Я этого ассемблера не знаю, но исходя из общих соображений, можно задать вопрос: а как передаются параметры вызова для функции CreateWindowEx?
     
  4. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    crypto
    Тут дело не в параметрах - программа не может такую функцию в системе найти

    говорит Undefined function call - CreateWindowEX

    Если кто знает - помогите!!!
     
  5. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    нет функции CreateWindowEX
     
  6. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Asterix

    Аплодисменты:))))

    CreateWindow просто - работает

    Теперь полезу в мануалы читать о передаче в нее параметров
    Вот что делает невнимательность!

    <я такого ассемблера не знаю>

    Эта программа была написана на совсем другом языке но декомпилирована чтобы исправить и пересобрать
    Тот текст - это "декомпиллят" (если так можно выразиться)
     
  7. Aquila

    Aquila Самурай дзена

    Публикаций:
    0
    Регистрация:
    30 авг 2002
    Сообщения:
    1.467
    Адрес:
    Russia, Moscow
    Попробуй ещё reateWindowEx с маленьким x-ом на конце.
     
  8. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Aquila

    Я в первый раз ЭТИМ занимаюсь... а что, регистр символов имеет значение?
     
  9. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    hTrader
    Я ведь тебе тоже правильно написал CreateWindowEx
     
  10. Asterix

    Asterix New Member

    Публикаций:
    0
    Регистрация:
    25 фев 2003
    Сообщения:
    3.576
    a помоему вполне внятно написал что нет функции CreateWindowEX ;)
     
  11. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Разобрался.

    А как вызвать функцию из сторонней библиотеки?

    (каким только гемором не приходится заниматься)
     
  12. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Я так понимаю, на форуме извращенцев нет:)

    Имею программу, которая была откомпилирована в 98 году под консоль. Прога что-то там подсчитывает...

    Исходников нет. Стоит задача впихнуть в нее оконный интерфейс под винду.

    Есть 2 выхода

    1 - переписать заново на си и не мучиться
    2 - декомпилировать и работать с ассемблерным кодом (если его так назвать можно) - это я выбрал в образовательных целях

    PS:А что так можно ведь любую прогу вскрыть... и удалить, например, обработку серийного номера, или я не прав?
     
  13. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    hTrader
    Гы :))))))
    В принципе любую, был бы стимул, либо интерес.
    Выход у тебя наверное один - понять, как работает программа (восстановить алгоритм работы, ес-но кое-что придется реверснуть) и переписать ее под твои требования. При этом не забыть сохранить исходники!

    А насчет извращенцев - смотря что ты под этим понимаешь. Вообще извращенцы везде наличествуют (особенно в высших эшелонах - чем выше пост, тем извращеннее его занимающий).
     
  14. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    hTrader
    Есть 2 выхода
    Если знать чем конкретно занимается программа, то число вариантов увеличится.

    так можно ведь любую прогу вскрыть
    Все упирается во время и деньги.
     
  15. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Считает коэфициент для каких-то труб на основе температуры и давления
     
  16. crypto

    crypto Active Member

    Публикаций:
    0
    Регистрация:
    13 дек 2005
    Сообщения:
    2.533
    hTrader
    А на чем прога твоя написана?
     
  17. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
  18. q_q

    q_q New Member

    Публикаций:
    0
    Регистрация:
    5 окт 2003
    Сообщения:
    1.706
    hTrader
    оконный интерфейс под винду ... Считает коэфициент ...
    Почему бы не воспользоваться Excel'ем?
     
  19. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Параметры трубы берет с какойто штуки которая называется эвдиоиметр потом отсылает на другой комп где регистрирует данные ф базе .. . .... дальше оба лезут на сервер в таблицу с другими коэффициентами и что-то там сравнивают, потом какие-то цыфры на принтер - все остальное в БД

    ТОЛЬКО НЕ ЭКСЦЕЛЬ!!!!!
     
  20. hTrader

    hTrader Сергей

    Публикаций:
    0
    Регистрация:
    26 дек 2006
    Сообщения:
    150
    Адрес:
    ОПИА
    Кстати что такое LFrame1?

    Очень часто встречается....

    еще есть RFrame1 и BottomPanel4.... Что это за данные в проге?